我有一个如下所示的 XML 变量:
<code>
<IDs>
<ID id="1">a</ID>
<ID id="43">d</ID>
<ID id="3">b</ID>
</IDs>
</code>
我想在将更新表的存储过程(SQL Server)中使用它。
我的表如下所示:
ID INT,
a INT,
b INT,
c INT,
d INT
该语句应增加与 id 关联的字母值。
所以它看起来像这样:
Table Row with ID = 1, update column "a" by increasing the current value by 1.
Table Row with ID = 43 - update column "d" by increasing current value by 1.
Finally Table row with ID= 3 - update column "b" by increasing value by 1.
这是我到目前为止所拥有的 - (第二行是我最需要帮助的地方。):
Update MyTable
SET @letter = letterVal +1
WHERE ID IN(
SELECT x.v.value('@id','INT')
FROM @xmlIDs.nodes('/IDs/ID') x(v)
)