SQL序列键

当需要更新表中的数据或像表中插入数据时,在很多情况下需要产生唯一的整数序列键

一:更新列的值为唯一值

原数据如下图:

可以定义一个CTE,返回orerid列的值以及row_number()的计算结果。如果行号没有排序要求,可以在窗口排序子句中使用(select null),然后再针对CTE的外部查询中,使用update语句来设置orderid为row_number()的计算结果。

with C as
(
select orderid,ROW_NUMBER() over(order by (select null)) as rownum
from Sales.MyOrders
)

update C set orderid=rownum

二:数字序列的应用

 

posted @ 2017-05-05 22:24  小破天  阅读(266)  评论(0编辑  收藏  举报