【发布时间】:2017-08-07 11:25:19
【问题描述】:
我的视图包含重复 guid 的表示
GUID
----
1234
5524
1111
然后我有这样的表:
ID|SomeColumn|GUID
--+----------+----
1 |value1 |1111
2 |value1 |1112
3 |value1 |1113
4 |value1 |5524
5 |value1 |1234
我想创建遍历该表的循环并更新 GUID 等于该视图(表)GUID 的那些行。
我系了这个:
UPDATE DT
SET [GUID] = dbo.CREATE_UNIQUE_GUID(ID)
FROM [DetailsTable] as DT
INNER JOIN GUID_Duplicates as GD
ON DT.GUID=GD.GUID
WHERE DT.GUID=GD.GUID
并且有:在函数中无效使用副作用运算符“UPDATE”。
所以在伪代码中我想:
如果 DataTable 包含具有相同 GUID 的行,则在 Duplicate Table 中为每个重复项设置 GUID 为新生成的值。
注意:我有 guid 生成工作,所以我只是不确定如何使用每个视图值浏览该 DataTable。 DataTable 也可以有多个行,其中 GUID 等于 View 中的每个 GUID。
【问题讨论】:
-
用您正在使用的数据库标记您的问题。另外,显示您拥有此代码的编程块。
标签: sql while-loop sql-update