如何为 SQL 服务器使用 count() 或 Row_number()
How to use count() or Row_number() for SQL Server
我目前正在尝试找出一种方法来显示 table 中的行号或项目数。我需要 SQL 语句 Row_number 或计数或类似的东西来获取 ID 列。这是我要找的东西:
| Col1 | Col2 | Col3 | ID |
-------------------------
A 1/9 2/1 1
A 1/9 2/2 1
A 1/9 2/3 1
B 2/1 2/1 2
B 2/1 2/2 2
B 2/1 2/3 2
C 2/6 2/1 3
C 2/6 2/2 3
C 2/6 2/3 3
C 2/6 2/3 3
所以基本上我想按 col1 计数并按 col3(日期列)排序以获得 ID
谢谢
你可以使用dense_rank()
,我认为:
select t.*, dense_rank() over (order by col1) as id
from t;
我目前正在尝试找出一种方法来显示 table 中的行号或项目数。我需要 SQL 语句 Row_number 或计数或类似的东西来获取 ID 列。这是我要找的东西:
| Col1 | Col2 | Col3 | ID |
-------------------------
A 1/9 2/1 1
A 1/9 2/2 1
A 1/9 2/3 1
B 2/1 2/1 2
B 2/1 2/2 2
B 2/1 2/3 2
C 2/6 2/1 3
C 2/6 2/2 3
C 2/6 2/3 3
C 2/6 2/3 3
所以基本上我想按 col1 计数并按 col3(日期列)排序以获得 ID
谢谢
你可以使用dense_rank()
,我认为:
select t.*, dense_rank() over (order by col1) as id
from t;