如何为SQL表中共享按日期排序的相同ID的行创建子索引



我有一个表,其中每行都有列表示项目ID和日期。我希望能够添加一个额外的列,该列将按日期对共享Id的每一行进行索引。例如,我有表1,如何获得表2?

表1:

ID 日期
1 2022年3月2日
2 2022年1月2日
1 2021年12月18日
2021年11月22日
3 2021年6月10日
2021年8月13日

您还没有说明您使用的是哪种SQL。如果你能使用RANK()可以做你需要的事情。

create table s (
id int,
dat date);
insert into s values
(1,'2020-01-01'),
(2,'2020-01-02'),
(1,'2020-01-03'),
(2,'2020-01-04'),
(3,'2020-01-05'),
(2,'2020-01-06');
D_2pre>id|date|ranking-:|:--------|------:1|2020-01-01|11|2020-01-03|22020-01-02|12020-01-04|22020-01-06|33|2020-01-05|1

db<gt;小提琴这里

最新更新