当前位置: 代码迷 >> Sql Server >> 回来每用户的最近订单记录
  详细解决方案

回来每用户的最近订单记录

热度:39   发布时间:2016-04-27 10:54:11.0
返回每用户的最近订单记录
有一订单表结构如下
OrderId UserId CreateTime

OrderId是唯一的,UserId是可以重复的,CreateTime是指下单时间

现要求找出所有用户最近的一笔订单,求帮忙。
比如有用户A和B,A有两条记录,B有三条记录,找出A和B最近的一次交易记录,返回OrderId,UserId,CreateTime


------解决方案--------------------
探讨
SQL code
select orderid,userid,max(createtime)createtime from tb_order
group by orderid,userid

------解决方案--------------------
;WITH cte AS (
 SELECT rn=ROW_NUMBER() OVER(partition BY userid ORDER BY createtime desc,orderid desc),* FROM tb_order
)
SELECT * FROM cte WHERE rn=1;
  相关解决方案