首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何使用sql查询从重复/老客户处查找订单?

如何使用sql查询从重复/老客户处查找订单?
EN

Stack Overflow用户
提问于 2013-12-21 11:44:19
回答 3查看 2.5K关注 0票数 0

我正在使用mysql。

我现在有列为customer_id, order_id, order_date(datetime)orders表,我希望在一个查询中找到2013年12月20日的所有订单,这些订单来自重复客户(不是新客户,即客户之前也下了一些订单)。

Orders表也有其他典型的列,这里没有提到。让我知道我可以提供更多的数据。

更新:我们可以在没有子查询的情况下完成吗?如果是,怎么做?(只是好奇)

EN

回答 3

Stack Overflow用户

回答已采纳

发布于 2013-12-21 12:01:45

代码语言:javascript
复制
select customer_id , order_id, order_date from orders where order_date between
'20/12/2013 00:00:00' and '20/12/2013 23:59:00' AND
customer_id IN (SELECT customer_id FROM orders where order_date < '20/12/2013')
票数 0
EN

Stack Overflow用户

发布于 2015-01-27 08:23:19

假设order_id是表orders中的主键,而customer_id是外键,则可以使用以下带有self的查询来提取与重复客户对应的所有order_id列表:

代码语言:javascript
复制
select order_id, customer_id  
from orders a, orders b
where a.customer_id = b.customer_id
and order_date = '20131220'
票数 0
EN

Stack Overflow用户

发布于 2013-12-21 11:48:00

现在检查这个查询

代码语言:javascript
复制
 SELECT * FROM `orders` WHERE DATE='20/12/2013' AND customer_id IN (SELECT customer_id FROM yearly_sales WHERE DATE < '20/12/2013' )
票数 -1
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/20718623

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档