我有一个存储过程,该存储过程具有一个包含一列的表,并且需要为该列中的每一行生成一个NEWID()。我只能通过循环来完成此操作吗?

+---+    +--------------------------------------+---+
| a |    | FD16A8B5-DBE6-46AB-A59A-6B6674E9A78D | a |
| b | => | 9E4A6EE6-1C95-4C7F-A666-F88B32D24B59 | b |
| c |    | 468C0B23-5A7E-404E-A9CB-F624BDA476DA | c |
+---+    +--------------------------------------+---+

最佳答案

您应该能够从表中进行选择,并包含newid()来为每一行生成值:

select newid(), col
from yourtable;

参见SQL Fiddle with Demo

关于sql - 为列中的每一行生成GUID,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/17839420/

10-11 10:37