我有一个如下所示的表格:
id | name| fk_something
----------------
0 | 25 | 3
1 | 25 | 2
2 | 23 | 1
我想添加另一列,其编号每次出现 name
行时都会增加,例如:
id | name| fk_something| n
--------------------------
0 | 25 | 3 | 1
1 | 25 | 2 | 2
2 | 23 | 1 | 1
我不确定如何实现这一点。使用 count()
我只会得到 name
的出现总数,但我想增加 n
以便我有一个不同的值每一行。
最佳答案
你想要 row_number()
:
select t.*, row_number() over (partition by name order by id) as n
from table t;
关于sql - 如何计算/增加 MS SQL 选择中表列的当前出现次数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57574320/