我有这组数据
.png
我需要的是得到这个结果
404
如何让所有群体排名但按日期排序
答案 0 :(得分:1)
SELECT *
, DENSE_RANK() OVER (ORDER BY companyId DESC, [Date] DESC) AS [DENSE_RANK]
FROM TableName
答案 1 :(得分:0)
如果您希望按日期排序组,则需要两个步骤:首先获取每个组的最大日期。然后使用dense_rank()
:
select shopid, companyid, date,
dense_rank() over (order by maxd desc) as dense_rank
from (select t.*, max(date) over (partition by companyid) as maxd
from table t
) t
注意:这假设您的日期确实存储为日期而不是字符串。如果数据(不正确地)存储为字符串,则需要进行其他转换。