假設我將員工數據存儲在日誌表的xml
列中。有時,數據也會在存儲過程的xml
列中更新。在SQL Server中使用XQuery比較兩組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
我只是有些區別需要顯示如上所述的差異。因此,請指導我如何使用XQuery比較兩個xml數據,並僅在SQL Server中以上述方式顯示差異。請用代碼片段指導我。感謝
這真是棒極了....謝謝 – Thomas 2012-01-07 16:45:49
+1優秀的工作 - 我一直在研究如何實現這一點,只是沒有看到樹木的森林! – 2012-01-07 16:55:23
什麼改變在我們的代碼來顯示數據如何marc_s數據顯示,但我不想像marc_s硬編碼字段名稱。你能幫助嗎?謝謝 – Thomas 2012-01-09 06:32:02