gpt4 book ai didi

mysql - 选择最后一条消息超过 30 天的用户

转载 作者:行者123 更新时间:2023-11-28 23:55:50 25 4
gpt4 key购买 nike

我有一个 mysql 表 messages与列 user_id , message , created_at , type

我需要选择 30 多天前最后一次发布 type=1 消息的所有用户

我试过:

SELECT user_id FROM messages WHERE type=1 AND MAX(created_at) < DATE_SUB(NOW(), INTERVAL 30 day)这给了我错误:

invalid use of group function

最佳答案

错误是由于在 where 子句中使用了 MAX,它是一个聚合函数。使用 MAX 是正确的,但适用于每个用户。即先按用户分组,再使用MAX条件。尝试:

SELECT user_id 
FROM messages
WHERE type=1
group by user_id
having MAX(created_at) < DATE_SUB(NOW(), INTERVAL 30 day)

关于mysql - 选择最后一条消息超过 30 天的用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/31708371/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com