我的注销功能需要更新登录列表的最新行。
这是我想出的,但它甚至没有通过语法验证。
$query =
'UPDATE user_logins
SET active = 0
WHERE user_id = ' . Database::instance()->escape($this->getCurrentUserId()) . '
AND datetime = MAX(datetime) LIMIT 1';
基本上可能有 30 个左右具有相同的 user_id
值。我只想更新上次登录的信息。这显然是最新的日期时间
值。
我做错了什么?
最佳答案
只要您的日期时间列是 timestamp
或 datetime
类型字段,这应该可行。
$query =
'UPDATE user_logins
SET active = 0
WHERE user_id = ' . Database::instance()->escape($this->getCurrentUserId()) . '
ORDER BY datetime DESC LIMIT 0,1';
关于php - 更新需要查找 'newest' 行的查询,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2354386/