webForumDet fria alternativet

MySQL databas, starta med ett senare id än 1

Databaser & SQL

9 svar · 463 visningar · startad av nummersju

Medlem sedan aug. 2005198 inlägg
Frågan#1

Hej hej!
Denna kod hämtar ju alla id genom att börja med det första.

"SELECT matchtype, gamecomment, date FROM games ORDER BY id DESC";

Men nu vill jag att det ska börja på id #15. Alltså att alla id från och med id nummer 15 visas.
Kan man göra så? Och isf hur? :)

Tack!

Medlem sedan maj 2005562 inlägg
#2
SELECT matchtype, gamecomment, date FROM games WHERE id >= 15 ORDER BY id DESC;
Medlem sedan aug. 2005198 inlägg
#3

Hm, kanske uttryckte mig lite dåligt...
Jag vill alltså att de senaste raderna efter rad 14 i databasen ska läggas till. Alltså inte de som har ett större id än 14.
Exempel
senast tillagda id
hej6
hej5
hej4
äldre id
hej3
hej2
hej1

och om jag sedan lägger till en hej7 ska det se ut såhär:
senaste id
hej7
hej6
hej5
äldre id
hej4
hej3
hej2
hej1

Jag vill alltså bara visa de id som är tilllagda tidigare än de senast 14 tillagda.
Hoppas jag förklarade bättre nu. Går detta att lösa på något annat sätt kanske?

Tack!

Medlem sedan maj 2005562 inlägg
#4

Du vill alltså ha de 15 senaste posterna ?

SELECT matchtype, gamecomment, date FROM games ORDER BY id DESC LIMIT 15;
Medlem sedan aug. 2005198 inlägg
#5

Nej, jag menar att jag vill ha fram de posterna som kommer _efter_ de senaste 15 posterna...
Tack för att du försöker iaf :D

Medlem sedan juni 200032 967 inlägg
#6

Du får nog försöka förklara en gång till vad du menar. Jag fattar ingenting. Så här tolkar jag dina inlägg:

  1. Du vill ha alla poster med ID:n högre än 14.
  2. Du vill visa alla poster som lagts in i tabellen tidigare än de 14 senaste.
  3. Du vill visa alla poster som lagts in i tabellen efter (hur 17 går det till, överhuvudtaget) de 15 senaste posterna.

Vad är det du vill?

Slutligen ett länktips: http://www.webforum.nu/forumdisplay.php?f=53

Medlem sedan feb. 20066 inlägg
#7

är det så här du menar?
SELECT matchtype, gamecomment, date FROM games ORDER BY id DESC LIMIT 14,50;

detta kommer att lista de 50 högsta id av de som inte är de 14 senaste.

Medlem sedan aug. 2005198 inlägg
#8

Tack! Det är så jag menar! Måste prova när jag kommer hem :)

/r
Men om man vill ha alla rader efter de 14 senaste? inte bara de 50...

Medlem sedan maj 2005562 inlägg
#9

nummersju skrev:

Tack! Det är så jag menar! Måste prova när jag kommer hem :)

/r
Men om man vill ha alla rader efter de 14 senaste? inte bara de 50...

så här står det i manualen

mysql.com skrev:

To retrieve all rows from a certain offset up to the end of the result set, you can use some large number for the second parameter. This statement retrieves all rows from the 96th row to the last:

SELECT * FROM tbl LIMIT 95,18446744073709551615;

dvs använd

SELECT matchtype, gamecomment, date FROM games ORDER BY id DESC LIMIT 14,18446744073709551615;

Medlem sedan aug. 2005198 inlägg
#10

Tackar tackar! Precis så jag ville ha det :D

266 ms totalt · 4 externa anrop · v20260731065814-full.2f471f9e
134 ms — deklarationer (db)
0 ms — hämta statistik (cache)
129 ms — hämta tråd, inlägg och bilagor (db)
126 ms — ändringar (db)