我有一个包含以下属性的表:
Date | Inv_Num | Cust_Name
现在,鉴于开始日期和结束日期,我希望所有具有多个发票的Cust_Name在期间内铺设日期?
如果两个发票日期之间的差异少于30天,则不会将客户视为重复。
示例:
01/19/2013 201237 A
01/11/2013 201235 A
01/05/2013 201276 B
03/05/2013 201256 B
12/12/2000 201010 C
如果这里的StartDate是01/01/2013并且EndDate是06/06/2013那么这里A不是重复客户,而B是重复客户而C不在提及的范围内。如何处理此查询请帮忙。我们面临的主要问题是如何根据Cust_Name对记录进行分组后进行比较。
答案 0 :(得分:0)
您可以尝试以下[未经测试]
select a.cust_name
from invoice a join invoice b
on a.cust_name = b.cust_name
and a.`date` < b.`date`
where datediff(b.`date`, a.`date`) > 30