webForumDet fria alternativet

Plocka ut var x:te rad

Databaser & SQL

4 svar · 313 visningar · startad av HenrikAI

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

Jag har en tabell med ett ID-fält (int) och vill plocka ut t.ex. var femte rad, dvs. först raderna där ID = 1, 6, 11.. sedan ID = 2, 7, 12... osv. Hur gör man det på bästa sätt? Funderade på MOD() men får inte till det riktigt.

Använder MySQL.

Medlem sedan dec. 200012 464 inlägg
#2
order by mod(id,5),id
Medlem sedan nov. 2004112 inlägg
#3

Tack, det var dock inte riktigt vad jag ville. Jag menade alltså att jag i en sats bara vill plocka ut rad 1, 6, 11.. och inga fler. Därefter en ny sats för rad 2, 7, 12..

Ursäkta att jag var lite oklar!

Medlem sedan nov. 2004112 inlägg
#4

Kom på det själv, förstår inte vad jag gjorde för fel först. :bire

WHERE mod(id,5) = x

där x=1,2,3,4...

Medlem sedan dec. 200012 464 inlägg
#5
where mod(id,5) = 1
where mod(id,5) = 2

usw

323 ms totalt · 4 externa anrop · v20260731065814-full.86ec41c2
201 ms — deklarationer (db)
0 ms — hämta statistik (cache)
119 ms — hämta tråd, inlägg och bilagor (db)
199 ms — ändringar (db)