gpt4 book ai didi

MySQL - 显示尚未更新产品的用户

转载 作者:行者123 更新时间:2023-11-29 17:16:10 25 4
gpt4 key购买 nike

好吧,让我尽力解释一下。我需要为尚未续订特定产品(1 年到期)的人员生成报告。我们将此称为成员(member)资格。

我只需要为每个“client_no”提取与产品编号字符串匹配的最新行。我不想提取重复的“client_no”记录,但是可以有多个不同的“product_id”。

查询:

SELECT * FROM client_educational 
WHERE product_id IN ('1', '2', '3')
AND order_date < DATE_SUB(CURDATE(),INTERVAL 1 YEAR);

数据库设计:

client_no    product          order_date

54321 Membership 3 2018-04-15
12345 Membership 2 2017-04-15
12345 Membership 1 2016-04-15
58428 Membership 2 2015-04-15
58428 Membership 1 2014-04-15

当前结果:

client_no    product          order_date

12345 Membership 2 2017-04-15
12345 Membership 1 2016-04-15
58428 Membership 2 2015-04-15
58428 Membership 1 2014-04-15

期望的输出:

client_no    product          order_date

12345 Membership 2 2017-04-15
58428 Membership 2 2015-04-15

最佳答案

请检查以下查询。嵌套查询条件是排除近1年内有订单的客户。

SELECT c.* FROM client_educational c 
WHERE c.product_id IN ('1', '2', '3')
AND c.order_date < DATE_SUB(CURDATE(),INTERVAL 1 YEAR)
AND c.client_no NOT IN
(
SELECT client_no FROM client_educational
WHERE product_id IN ('1', '2', '3')
AND order_date >= DATE_SUB(CURDATE(),INTERVAL 1 YEAR)
)
group by c.client_no order by c.order_date desc

关于MySQL - 显示尚未更新产品的用户,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51605575/

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