Usuwanie wielu węzłów w pojedynczym XQuery dla SQL Server

Mam:

stół zxml wpisz kolumnę (lista identyfikatorów)naxml typ parametru (także lista identyfikatorów)

Jaki jest najlepszy sposób usunięcia węzłów z kolumny, które pasują do węzłów w parametrze, pozostawiając nienaruszone wszystkie niedopasowane węzły?

na przykład

<code>declare @table table (
    [column] xml
)

insert @table ([column]) values ('<r><i>1</i><i>2</i><i>3</i></r>')

declare @parameter xml
set @parameter = '<r><i>1</i><i>2</i></r>'

-- this is the problem
update @table set [column].modify('delete (//i *where text() matches @parameter*)')
</code>

Dokumentacja MSDN wskazuje, że powinna być możliwa (wWprowadzenie do XQuery w SQL Server 2005):

Ta procedura przechowywana może być łatwo zmodyfikowana, aby zaakceptować fragment XML zawierający jeden lub więcej elementów umiejętności, dzięki czemu użytkownik może usunąć wiele węzłów umiejętności za pomocą pojedynczego wywołania procedury składowanej.

questionAnswers(2)

yourAnswerToTheQuestion