gpt4 book ai didi

mysql - 非活跃客户mysql查询优化

转载 作者:行者123 更新时间:2023-11-29 06:47:20 26 4
gpt4 key购买 nike

我有一个包含数百万条记录的客户表。客户

id | name | ..... 

我还有一个订单表

id | custID | orderDate | ....

我需要找出所有超过30天没有下单的人,还应该包括从来没有下过单的人

select name,customer.id from customer where id in 

(select custID from orders where datediff(curdate(),orders.orderDate) > 30 )

union

select name,customer.id from customer left join orders on customer.id = orders.custID where orders.id is null

如何优化查询?

最佳答案

尝试

select name,t.id 
from customer t where
not exists (
select 1
from orders where
custID=t.id
and
datediff(curdate(),orders.orderDate) <= 30 )

关于mysql - 非活跃客户mysql查询优化,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17878275/

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