Frågan 5 nov. 2001 19:57 #1 Hur skriver man sql så man kan presentera resultatet som i sökmotorerna...1-49,50-99, osv.
L LarsG Medlem sedan dec. 2000 12 464 inlägg Det finns inget som fungerar för alla databaser. Beroende på vilken databas man använder kan man göra lite olika.
Det går också att sköta om det i ASP eller något annat gränssnitt.
Här finns ett exempel på hur man gör i ASP
http://cgi.webforum.nu/wf/arkiv/asp_faq.html#paging
------------------
essentitia preter non sans multiplicandum
Om man använder Access, finns det något sätt då....eller Mysql
Kan man inte använda typ "TOP" med ett offset ?
L LarsG Medlem sedan dec. 2000 12 464 inlägg Nej, top har inget offset. Det går att använda subselect
Ta rad 51-100
select top 50 * from ogrish
where id not in (select top 50 id
from ogrish order by id )
order by id
En sådan lösning är inte speciellt effektiv. Då är det oftast bättre att använda ett frikopplat recordset (som i exemplet) eller getrows.
I mysql kan du använda funktionen limit som kan ta ett offset,så där är det enklare
select * from ogrish order by id limit 50,50
------------------
essentitia preter non sans multiplicandum
[Redigerat av LarsG den 05 nov 2001]
Tack för hjälpen.
Nu kan jag tyvärr int asp så bra.
Jag kodar i jsp....men om jag fattat rätt så får jag loopa mig fram tex 50 poster printa ut..och skippa resten.
S SPiN Medlem sedan mars 2000 7 896 inlägg Om du använder MySQL fungerar ju LarsG's kod för MySQL vilket språk du än använder.
JSP och Access är jag inte direkt het på, däremot... :l
------------------
SPiN, bjorne.w@telia.com
-- Tekniska framsteg är som en yxa i händerna på en kriminell galning / Albert Einstein --
L LarsG Medlem sedan dec. 2000 12 464 inlägg Du kanske kan använda ett cachat rowset. Har dock inte koll på vilka drivers som stöder det.
------------------
essentitia preter non sans multiplicandum
Jag använder Access när jag testar....
Men jag löste det med att själv hålla reda på vilka poster som skall skrivas ut och vilka det skall skapas "länkar" till.