Удаление нескольких узлов в одном XQuery для SQL Server

Я имею:

a table with an xml type column (list of IDs) an xml type parameter (also list of IDs)

Каков наилучший способ удалить узлы из столбца, которые соответствуют узлам в параметре, оставляя при этом любые несопоставленные узлы нетронутыми?

например

<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>

Документация MSDN указывает, что это должно быть возможно (вВведение в XQuery в SQL Server 2005):

This stored procedure can easily be modified to accept an XML fragment which contains one or more skill elements thereby allowing the user to delete multiple skill nodes with a single invocation of stored procedure.

Ответы на вопрос(2)

Ваш ответ на вопрос