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中文网其他相关文章!