1

同じ ID に対して複数回更新する必要がある XML 列があります。クエリを実行すると、最初に一致した ID の XML のみが更新されます。ここにクエリがあります

Update  Quote 
Set     [XML].modify('replace value of (/Document/LineItems/LineItem[@ID=sql:column("QLines")]/LineItemStatus/text())[1] with "DELETED"')
From    Quote Qt
    Inner Join @QuoteLines Q on Qt.QuoteID=Q.QtID

@QuoteLines Table
QLines  QtID
30  111645001
40  111645001

Quote Table
QuoteID         XML
111645001   '<Document ID="111645001">'

Quote Table では、行項目 30 と 40 の両方の XML ステータスが「削除済み」である必要がありますが、行項目 30 についてのみ更新されています。

カーソルや反復のようなものを使用する必要はありません。ありがとう

4

0 に答える 0