【发布时间】:2013-03-06 18:28:37
【问题描述】:
这是我的桌子:
Date SSSN MyID Hours
01012013 1234 8
01012013 2345 7
01012013 3456 8
02012013 1234 5
02012013 2345 12
02012013 3456 7
我想设置 MyID 使表格如下所示:
Date SSSN MyID Hours
01012013 1234 1 8
01012013 2345 1 7
01012013 3456 1 8
02012013 1234 2 5
02012013 2345 2 12
02012013 3456 2 7
我在看这个:Syntax of for-loop in SQL Server 还有这个SQL : Update ID; According to Date,但没有到达那里。
似乎是一项轻松的工作,但不知何故无法按预期工作。
为了清楚起见,我不能使用 alter table IDENTITY(1,1)。
这是在使用 SQL Server 时。
按照 BlueFeet 的建议,通过使用 dense_rank() 而不是 row_number() 来解决。
【问题讨论】:
-
请通过添加适当的标签(Oracle、SQL Server、MySQL 等)指定您的目标关系数据库管理系统。可能有一些答案利用了不受普遍支持的语言或产品功能。此外,通过使用特定的 RDBMS 对其进行标记,您的问题可能会受到更适合回答的人的关注。
标签: sql sql-server for-loop while-loop identity