zeile einer db-Ausgabe löschen

kesnw

Erfahrenes Mitglied
Hallo,

ich möchte eine Sortierte Mysql Abfrage erzeugen und anschließend den letzten Datensatz aus der DB löschen, ohne irgendetwas über diesen zu wissen.

Geht das? Kann man den x. Datensatz löschen?

Danke!
 
Ja ich denke mit einer normalen DELETE FROM -Anweisung in Verbindung mit der WHERE Klausel und Sortierung mit anschließendem LIMIT 0,1 müsste es gehen.

Code:
DELETE FROM tabelle WHERE [Bedingungen] ORDER BY feld LIMIT 0,1

Aber ausprobieren. Weiß nicht obs klappt.
 
Nein, LIMIT bezieht sich auf die Anzahl der Datensätze, die gelöscht werden sollen. Du musst aber nach
PHP:
ORDER BY spaltenname
noch DESC angeben, damit mySQL die Datensätze von hinten nach vorne ordnet. Du löschst quasi mit
PHP:
DELETE FROM tabelle ORDER BY spaltenname DESC LIMIT 1
den ersten Datensatz von hinten.

edit: Das mit dem DESC stimmt natürlich nur, wenn du chronologisch oder nach einem auto_increment Wert sortierst.
 
Zuletzt bearbeitet:
Zurück