mysql查询问题

问题描述

有一张客户表A订单表B 订单表和客户表的客户ID关联
客户半年不做订单或着没做过订单就是休眠状态,客户没做过订单,那么订单表里就没有和这个客户相关的数据

现在怎么用一条sql语句就可以查出从来没做订单,和半年没做过订单的客户id

阅读 1.2k
1 个回答

好几种写法,简单写了下,你做个参考吧

从来没做订单:
select a.id,count(b.user_id) count from A a left join B b on b.user_id = a.id group by a.id HAVING count = 0;

半年没做过订单:
select a.id,IFNULL(b.create_time,0) time from A a left join (select * from B order by create_time desc) b on b.user_id = a.id group by a.id HAVING time < unix_timestamp(date_sub(now(),interval 6 month));
撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题