次のような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.
これは私がこれまでに持っているものです-(2行目は私が最も助けを必要としているところです。):
Update MyTable
SET @letter = letterVal +1
WHERE ID IN(
SELECT x.v.value('@id','INT')
FROM @xmlIDs.nodes('/IDs/ID') x(v)
)