回到目錄
在sqlserver中有很多種資料類型,而XML資料類型是比較新奇怪的一種格式,我們平常接觸的可能比較少,用的也少,而在某些場合,使用XML類型可能會使我們的開發變簡單,下面就是一種情況:
表test有字段Menu,它儲存的資訊可能有兩種方式,對标準menu,擴充menu,自定義Menu等,而這些方式所需要的鍵/值是不同的,有些同學會說使用Json串來存儲,這當然是一種很不錯的方式,但是資料庫并沒有這種類型,是以在查詢,聚合時非常困難,這些我們想到了xml格式,它是SQLSERVER的是一種資料類型,支援查詢,聚合等操作,下面我們來學習一下.
1 XML字段結構如下
<WxPaymentConfig>
<demo>zhang</demo>
<price>1000</price>
</WxPaymentConfig>
2 查詢資料,通過XML類型作為條件
SELECT *
FROM demo
WHERE Menu.value('(/WxPaymentConfig/demo)[1]', 'nvarchar(50)') = 'zhang'
3 查詢資料同時對它進行統計,即執行某些聚合操作
SELECT SUM(Menu.value('(/WxPaymentConfig/price)[1]', 'decimal'))
FROM demo
WHERE Menu.value('(/WxPaymentConfig/demo)[1]', 'nvarchar(50)') = 'zhang'
結果是我們所希望看到的
作者:倉儲大叔,張占嶺,
榮譽:微軟MVP
QQ:853066980
支付寶掃一掃,為大叔打賞!
