Sql server SQL Server-生成分区id的窗口函数?
我想要一个为每个分组生成id号的查询 如果我有一张像这样的桌子Sql server SQL Server-生成分区id的窗口函数?,sql-server,sql-server-2008-r2,Sql Server,Sql Server 2008 R2,我想要一个为每个分组生成id号的查询 如果我有一张像这样的桌子 +------+------+ | Col1 | Col2 | +------+------+ | 1 | a | | 1 | a | | 1 | a | | 2 | b | | 2 | b | | 3 | c | +------+------+ 如何在col1中生成数字-以便“a”的每个值始终生成相同的id 我可以想象它看起来像: select What_i
+------+------+
| Col1 | Col2 |
+------+------+
| 1 | a |
| 1 | a |
| 1 | a |
| 2 | b |
| 2 | b |
| 3 | c |
+------+------+
如何在col1中生成数字-以便“a”的每个值始终生成相同的id
我可以想象它看起来像:
select What_is_this_Called() over (partition by col2 order by col2) as col1
,col2
from myTable
返回结果集分区内的行的排名,排名中没有任何间隔。一行的秩是一加上位于所讨论行之前的不同秩的数量
示例:
SELECT DENSE_RANK() OVER(ORDER BY col2) AS col1, col2
FROM myTable