XML DML不允许使用SQL变量, 需要用其它方法。
declare @xml1 xml,@xml2 xml
set @xml1 = ' <r> <r1>11 </r1> </r>'
set @xml2 = ' <r2>22 </r2><r2>vx</r2><r2>testxbxcx</r2>' SET @xml1=(SELECT @xml1 '*', @xml2 '*' FOR XML PATH(''), TYPE);  
set @xml1.modify('insert (/r2[1]) into (/r[1])')
set @xml1.modify('delete r2[1]')select @xml1