Hallo,
eigentlich keine Frage, sondern nur eine Hilfe für Suchende, denen es ähnlich ergeht wie mir in den letzten Stunden.
$sql = "select * from tablex LIMIT 0,10 ORDER BY id desc";
funktioniert nicht!
$sql = "select * from tablex ORDER BY id desc LIMIT 0,10";
so geht's aber ;-)
Bei der Fehlersuche habe ich nirgendwo eine Seite/Manual gefunden, die mir sagt, dass die LIMIT-Anweisung anscheinend immer am Ende stehen muss. Na ja, Rätsel gelöst, hoffe es hilft dem Einen oder Anderen.
nur ein Hinweis zum Verständnis:
LIMIT muß am Ende stehen, denn vorher werden die Daten ausgewählt, danach sortiert, und anschliessend an den Aufrufer zurückgegeben. Dabei werden im Falle dieses Statements nur 10 Sätze zurückgegeben.
Das kann heissen: Dein Select liefert 10 Mio. Datensätze, die dann sortiert werden und anschliessend werden die ersten 10 Sätze zurückgegeben (zeitaufwendig, da alle 10 Mio. Datensätze sortiert werden müssen).
Willst Du nur 10 Sätze selektieren und diese sortiert ausgeben, musst Du ein Sub-Select verwenden.
hth
AugustQ