Mysql-ben visszanyerhető egy táblázat legutolsó ID-je? Ha igen, hogyan?
Mármint hogyan gondoltad?
Hogy mi a legnagyobb ID a táblában?
Pl.: SELECT id FROMtabla ORDER BY id DESC LIMIT 1;
Ez kiszedi a legnagyobb ID-t.
De van más módszer is erre, de hirtelen most ez ugrott be.
"SELECT id FROMtabla ORDER BY id DESC LIMIT 1; "
URAMATYÁM, ezt komolyan írtad???
SELECT MAX(id) FROM tabla;
de ha az utoljára beszúrt id kell, akkor:
SELECT LAST_INSERT_ID();
#6:
Igen, lassabb, bár ez csak nagyobb táblánál lehet feltűnő. De nem is ez a lényeg, hanem a helyes szemlélet. Mert mit akarunk megkapni? Az utolsónak beszúrt sor ID-ját. Akkor kérjük le közvetlenül, ha már úgyis tárolja a mysql (last_insert_id). Kicsivel rosszabb megoldás, hogy MAX-szal lekérjük a legnagyobb ID-t. Ilyenkor a mysql végigszalad a sorokon, és megkeresi. Persze a primary key miatt elég gyorsan meg fogja találni. De a lehető legrosszabb megoldás: kérjük le az összes sort (eleve hatalmas adatforgalom), rakjuk fordított sorrendbe , és vegyük az elsőt... Na ne bohóckodjunk már :D
Kapcsolódó kérdések:
Minden jog fenntartva © 2025, www.gyakorikerdesek.hu
GYIK | Szabályzat | Jogi nyilatkozat | Adatvédelem | Cookie beállítások | WebMinute Kft. | Facebook | Kapcsolat: info(kukac)gyakorikerdesek.hu
Ha kifogással szeretne élni valamely tartalommal kapcsolatban, kérjük jelezze e-mailes elérhetőségünkön!