Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Wie lösche ich jeden Datensatz nach der n-ten Zeile in MySQL?

In Anbetracht dessen, dass es keine rowId gibt in MySQL (wie in Oracle) würde ich Folgendes vorschlagen:

alter table mytable add id int unique auto_increment not null;

Dadurch werden Ihre Zeilen automatisch in der Reihenfolge select nummeriert Anweisung ohne Bedingungen oder Order-By.

select * from mytable;

Dann, nachdem Sie die Reihenfolge überprüft haben, stimmt sie mit Ihren Anforderungen überein (und vielleicht ein Dump der Tabelle)

delete from mytable where id > 10;

Abschließend möchten Sie vielleicht dieses Feld entfernen

alter table mytable drop id;