我有一张包含user_id和date_of_purchase的购买表。
我需要能够选择在12个月内完成2次购买的所有用户。日期可以是任何时间点,只要它们相隔不到12个月。
e.g。
user_id date_of_purchase
123 01/Jan/2010
124 01/Aug/2010
123 01/Feb/2010
124 05/Aug/2008
在这个例子中,我想要user_id 123
答案 0 :(得分:1)
select distinct user_id
from MyTable t1
inner join MyTable t2 on t1.user_id = t2.user_id
where t1.date_of_purchase - t2.date_of_purchase <= 365
注意:这不会处理闰年。
答案 1 :(得分:0)
在Oracle中,有一个DATE_DIFF函数 - 我认为MS等价物没有下划线(DATEDIFF)。