SQL:從 XML 資料存取屬性值
在 SQL 中,可以透過 XQuery 存取 XML 資料類型中的屬性值。這使您可以有效率地查詢和操作 XML 資料。
要擷取提供的 XML 中 語言 屬性的值:
<email> <account language="en" ... /> </email>
您可以使用下列指令XQuery表達式:
(/email/account/@language)[1]
這個表達式指定:
要在SQL 語句中使用此表達式,您可以將查詢修改為如下所示:
SELECT m.Body.value('(/email/account/@language)[1]', 'nvarchar(max)') FROM Mail
此查詢將以字串形式傳回語言 屬性的值。
範例:
declare @xml xml = '<email> <account language="en" /> </email>' select @xml.value('(/email/account/@language)[1]', 'nvarchar(max)')
輸出:
en
您也可以使用XQuery 用於處理表中的 XML數據,如下例所示:
declare @t table (m xml) insert @t values ('<email><account language="en" /></email>'), ('<email><account language="fr" /></email>') select m.value('(/email/account/@language)[1]', 'nvarchar(max)') from @t
輸出:
en fr
以上是如何使用 XQuery 從 SQL 中的 XML 資料中提取屬性值?的詳細內容。更多資訊請關注PHP中文網其他相關文章!