Сравните два набора XML-данных с помощью XQuery в SQL Server

Предположим, я храню данные о сотрудниках в столбце xml в моей таблице журнала. Иногда данные также обновляются в столбце xml из хранимой процедуры.

Вот пример примера

DECLARE @XML1 XML
DECLARE @XML2 XML

SET @XML1 = 
'<NewDataSet> 
<Employee>
<EmpID>1005</EmpID>
<Name> keith </Name>
<DOB>12/02/1981</DOB>
<DeptID>ACC001</DeptID>
<Salary>10,500</Salary>
</Employee>
</NewDataSet>'

SET @XML2 = 
'<NewDataSet> 
<Employee>
<EmpID>1006</EmpID>
<Name> keith </Name>
<DOB>05/02/1981</DOB>
<DeptID>ACC002</DeptID>
<Salary>10,900</Salary>
</Employee>
</NewDataSet>'

Есть некоторая разница в двух данных xml , которые мне нужно показать как старое значение и новое значение как результат sql

Old Value             New Value
---------             ---------
1005                  1006
12/02/1981            05/02/1981
ACC001                ACC002
10,500                10,900

, мне просто нужно показать разница, как указано выше. Пожалуйста, расскажите мне, как сравнить два XML-данных с помощью XQuery, и покажите разницу только описанным выше способом в SQL Server. Пожалуйста, помогите мне с помощью фрагмента кода. спасибо

9
задан marc_s 6 January 2012 в 19:13
поделиться