Ich habe eine Logintime Tabelle wie folgt aus:Wie letzte Datensatz (unter der Bedingung) löschen aus einer Tabelle in MySql
id | user_id | datetime
1 | 1 | 2011-01-17 18:51:05
2 | 1 | 2011-01-18 18:51:05
3 | 1 | 2011-01-19 18:51:05
4 | 2 | 2011-01-19 18:51:05
ich letzte Datensatz für user_id=1
löschen möchten. Der letzte Datensatz eines Benutzers kann von datetime
erkannt werden.
Wie kann ich dies mit einer Abfrage tun.
was ist, wenn es gab 2 Datensätze für user_id = 1 mit dem gleichen maximalen Datetime – nan
Einer von ihnen wird ... gelöscht werden kann oder nicht Je nach Szenario sinnvoll. –
In diesen Fällen würde ich normalerweise id anstelle eines Zeitstempels verwenden, um den neuesten zu bestimmen. Wenn id auf auto-increment gesetzt ist, hat der letzte Eintrag in der Datenbank immer die höchste ID (zB DELETE FROM LoginTime WHERE user_id = 1 ORDER BY ID DESC LIMIT 1) – Ivan