webForumDet fria alternativet

Select post 50-100 ?

Databaser & SQL

8 svar · 182 visningar · startad av presario

Medlem sedan nov. 20015 inlägg
Frågan#1

Hur skriver man sql så man kan presentera resultatet som i sökmotorerna...1-49,50-99, osv.

Medlem sedan dec. 200012 464 inlägg
#2

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

Medlem sedan nov. 20015 inlägg
#3

Om man använder Access, finns det något sätt då....eller Mysql

Medlem sedan nov. 20015 inlägg
#4

Kan man inte använda typ "TOP" med ett offset ?

Medlem sedan dec. 200012 464 inlägg
#5

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]

Medlem sedan nov. 20015 inlägg
#6

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.

Medlem sedan mars 20007 896 inlägg
#7

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 --

Medlem sedan dec. 200012 464 inlägg
#8

Du kanske kan använda ett cachat rowset. Har dock inte koll på vilka drivers som stöder det.

------------------
essentitia preter non sans multiplicandum

Medlem sedan nov. 20015 inlägg
#9

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.

257 ms totalt · 4 externa anrop · v20260731065814-full.1dc6f849
125 ms — deklarationer (db)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)
125 ms — ändringar (db)