我一直在重新学习SQL,但不确定是否可以完成此代码。有人可以提供有关此案例的反馈或替代方案吗?
因此,总的来说,我正在研究同一天,不同时间,同一用户之间提交的订单之间是否存在重复。
我在考虑第二步,我将对他们进行排名,以根据时间和日期找出是否还有另一行要排在第二位?
Select * ( including orderDate)
RANK() OVER(PARTITION BY
Customer,
case
when (Orderstart(Datetimestamp) > OrderEnd(Datetimestamp) and OrderEnd<Orderstart ) AS Rank_Items
From FirstStep
这只是对现在上升到500以上的所有事物进行排名。
样本数据
所需结果:
答案 0 :(得分:0)
我将使用row_number()
来识别同一位客户在同一日期的多个订单:
row_number() over (partition by customer, cast(orderdatetime as date) order by orderdatetime)
转换日期可能因数据库而异。
这枚举了给定日期的客户订单,这似乎是您想要完成的工作。