首页 > 解决方案 > SQL 语句 - 如何找到最新的条目 WHERE

问题描述

我尝试在 WHERE 子句中使用 MAX 函数,但没有得到正确的解决方案:

表:客人

dateTime | ID-A | ID-B | leaveTime 

问题:更新 dateTime 最新且 ID-A = 'dog' AND ID-B ='CAT' AND leaveTime 为空的 leaveTime。

UPDATE `guest` SET `leaveTime`='2020-08-20 13:00:06' WHERE SELECT(MAX(dateTime) AND ID-A= 5 AND ID-B= 1001);

我知道这种语法是错误的,但我不知道如何处理最大值,还是应该改用 HAVING ?

标签: sql

解决方案


试试看!!

UPDATE `guest` SET `leaveTime`='2020-08-20 13:00:06' WHERE dateTime in
(SELECT dateTime FROM guest where ID-A= 5 AND ID-B= 1001 ORDER BY dateTime desc LIMIT 1) and ID-A= 5 AND ID-B= 1001

推荐阅读