查詢XML類型數據的SQL語句
在定義了一個XML類型的數據之后,經常會用到查詢操作,下文就將為您介紹如何使用SQL語句來進行查詢操作,供您參考學習。
在T-Sql中,提供了兩個對XML類型數據進行查詢的函數,分別是query(xquery)和value(xquery, dataType),其中,query(xquery)得到的是帶有標簽的數據,而value(xquery, dataType)得到的則是標簽的內容。接下類我們分別使用這兩個函數來進行查詢。
1、使用query(xquery) 查詢
我們需要得到書的標題(title),使用query(xquery)來進行查詢,查詢SQL語句為:
query()函數
select @xmlDoc.query('/book/title')
2、使用value(xquery, dataType) 查詢
同樣是得到書的標題,使用value函數,需要指明兩個參數,一個為xquery, 另一個為得到數據的類型??聪旅娴牟樵冋Z句:
value()函數
select @xmlDoc.value('(/book/title)[1]', 'nvarchar(max)')
3、查詢屬性值
無論是使用query還是value,都可以很容易的得到一個節點的某個屬性值,例如,我們很希望得到book節點的id,我們這里使用value方法進行查詢,SQL語句為:
查詢屬性
select @xmlDoc.value('(/book/@id)[1]', 'nvarchar(max)')
【編輯推薦】