我在处理涉及下表的复杂查询时遇到了一些问题。假设时间使用内置的 sqlite 时间戳数据类型。
我正在尝试退回在第一次购买后 4 小时内第二次购买的客户,如果是在 2 小时内,则必须来自不同的商店。
我在思考如何参考特定行来比较第一次购买和第二次购买时遇到了麻烦。
购买
purchase_id | customer_id | store_id | purchase_time
1 1 1 2009-01-27 10:00:00.0
2 1 2 2009-01-27 10:30:00.0
3 2 1 2009-01-27 10:00:00.0
4 2 1 2009-01-27 10:30:00.0
5 3 1 2009-01-27 10:00:00.0
6 3 2 2009-01-27 16:00:00.0
7 4 3 2009-01-27 10:00:00.0
8 4 3 2009-01-27 13:00:00.0
商店
store_id | misc columns...
1
2
3
顾客
customer_id | f_name
1 name1
2 name2
3 name3
4 name4
name1, name4
在这种情况下,正确的回报将是。