Hoewel het verwijderen op deze manier een beetje onhandig is, kunt u in plaats daarvan een update uitvoeren om de gegevens te wijzigen, op voorwaarde dat uw gegevens eenvoudig zijn (zoals het voorbeeld dat u gaf). De volgende query splitst de twee XML-tekenreeksen in feite in tabellen, voegt ze samen, sluit de niet-null (overeenkomende) waarden uit en converteert deze terug naar XML:
UPDATE @table
SET [column] = (
SELECT p.i.value('.','int') AS c
FROM [column].nodes('//i') AS p(i)
OUTER APPLY (
SELECT x.i.value('.','bigint') AS i
FROM @parameter.nodes('//i') AS x(i)
WHERE p.i.value('.','bigint') = x.i.value('.','int')
) a
WHERE a.i IS NULL
FOR XML PATH(''), TYPE
)