gpt4 book ai didi

mysql - 获取过去 12 个月没有事件的用户

转载 作者:行者123 更新时间:2023-11-29 15:38:40 25 4
gpt4 key购买 nike

我希望使用 SQL 返回过去 12 个月内未执行任何积分/兑换事件的用户

用户数据

userId  email               create_date
1 steve@gmail.com 2017-01-05 12:55:00
2 mark_nel@gmail.com 2019-05-15 12:13:00
3 les.born@gmail.com 2018-04-05 03:15:00

积分数据

id  user_id activity_id activity_points create_date
1 1 1 10 2017-01-05 11:09:00
2 2 1 15 2019-06-12 09:17:00
3 2 2 10 2019-08-05 02:55:00
4 3 1 10 2019-01-05 07:15:00

兑换数据

id      user_id     redeem_points           create_date
1 2 20 2019-09-11 02:55:00

结果

email
steve@gmail.com

最佳答案

使用LEFT JOIN概念包含表user_data中的非匹配行,并通过使用where id of the两个表(points_data)删除匹配行来仅选择不匹配行,redeem_data) 为空

SELECT u.email
FROM user_data u
LEFT JOIN points_data p ON u.userId = p.user_id AND p.create_date >= CURRENT_DATE - INTERVAL 1 YEAR
LEFT JOIN redeem_data r ON u.userId = r.user_id AND r.create_date >= CURRENT_DATE - INTERVAL 1 YEAR
WHERE p.id IS NULL AND r.id IS NULL;

关于mysql - 获取过去 12 个月没有事件的用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57918184/

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