小编典典

如何从MySQL中的表中删除最后一条记录(条件)

sql

我有一个这样的 LoginTime 表:

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

我想删除的最后一条记录user_id=1。用户的最后一条记录可以通过识别datetime

如何使用一个查询执行此操作。


阅读 990

收藏
2021-03-23

共1个答案

小编典典

您需要按user_id(例如WHERE user_id = 1)过滤表,然后按时间(例如ORDER BY
datetime)对其进行排序,然后将查询限制为一项(例如LIMIT1),然后删除此查询的结果。最后,您将获得如下查询:

DELETE FROM LoginTime WHERE user_id=1 ORDER BY datetime DESC LIMIT 1
2021-03-23