XMLを解析して特定の値を含むノードを削除しようとしています。値が正確であれば削除する方法を知っていますが、 "contains"のようなものを使用したいと思います。TSQLを使用して特定の値のXMLをノードから削除する
これは正確に削除するために動作します:
update @XML set data.modify('delete //Message[text() = "customer has deleted their account"]')
しかし、私は「メッセージ」ノードはただのテキストが含まれている場所を削除する、のようなもの:
update @XML set data.modify('delete //Message[contains(text(), "customer")]')
ただし、これはエラーを返します:
XQuery [@XML.data.modify()]: 'contains()' requires a singleton (or empty sequence), found operand of type 'xdt:untypedAtomic *'
知事。私は非常に似たようなものになったが、それは2つのステップだった。ノードの内容を削除し、空のノードを削除します。これははるかにエレガントです。 –