webForumDet fria alternativet

Klurig mysql-query

3 svar · 262 visningar · startad av oHLLe

oHLLeMedlem sedan nov. 2002302 inlägg
#1

Jag skulle vilja få ut de 30 senaste posterna i en tabell, men kruxet är att jag vill ha de så att den äldsta posten kommer först. Tabellen innehåller fälten id(som är unik med auto_increment), text och user.

Jag vet inte ens om det går att göra det här med mysql. Hoppas att någon kan hjälpa mig med detta.

LarsGMedlem sedan dec. 200012 464 inlägg
#2

Såvitt jag förstår så kan du inte få det direkt i en SQL-fråga. Det enklaste som jag ser är att göra

select * from t order by id desc limit 30

läsa in dessa poster i en array och sedan traversera den i omvänd ordning.

oHLLeMedlem sedan nov. 2002302 inlägg
#3

Ok, då får jag göra på det viset. Tack för det snabba svaret

oHLLeMedlem sedan nov. 2002302 inlägg
#4

Jag kom precis på en annan lösning som fungerade.
Först en:

"SELECT count(*) FROM `tabell`"

sätt $offset till resultatet-30 och sen

"SELECT * FROM `tabell` ORDER BY `id` ASC LIMIT ".$offset.",30"
121 ms totalt · 3 externa anrop · v20260731065814-full.30151723
0 ms — hämta forumlista (cache)
0 ms — hämta statistik (cache)
119 ms — hämta tråd, inlägg och bilagor (db)