use*_*r13 4 row-number sql-server-2008 sql-update
我如何设置在更改表之后添加的列的值等于sql server 2008中的行no.这就是我希望列的值等于no.排.我也希望这个字段允许NULL值.所以它就像自动增量但允许空值,这就是为什么不想使用带有自动增量的标识或主键列的原因.那怎么设置为排?任何帮助将不胜感激.
小智 11
如果您尝试使用ROW_NUMBER()直接更新列,您将获得...
窗口函数只能出现在SELECT或ORDER BY子句中.
...所以改为INNER将表连接到自己......
UPDATE
[test123]
SET
[row_number] = [x].[rn]
FROM
[test123]
INNER JOIN
(
SELECT
[test_id],
ROW_NUMBER() OVER (ORDER BY [test_id]) AS rn
FROM
[test123]
) AS x
ON
[test123].[test_id] = [x].[test_id]
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
10491 次 |
| 最近记录: |