【发布时间】:2021-08-05 13:09:04
【问题描述】:
我正在寻找一种方法来检索 SQL Server 数据库中嵌入在 XML 中的特定信息
现在我的查询是:
SELECT
Name,
XML.query('/CatalogItem/parameters/.').value('.', 'varchar(MAX)') as [Info]
FROM
[ePO].[dbo].[UDLP_DEFINITIONS]
WHERE
[Type] = '80' OR [Type] = '81' AND CatalogID = 'D1234'
结果是
Name = Mobizen 32Go
Info = <conditions><condition grouping="or"><prop-key>vid_pid</prop-key><op-key>equals</op-key><value><![CDATA[1F75||0903||]]></value></condition></conditions>
你能告诉我如何在我的例子中得到这样的输出格式吗:
NAME VID PID
--- --- ----
Mobizen 32 Go 1F75 0903
VID / PID 的值必须来自 ![<value> 中的 CDATA 字段
非常感谢
杰拉德
【问题讨论】:
-
什么是原始XML,请edit
-
在提出问题时,您需要提供一个可重现的最小示例。请参考以下链接:stackoverflow.com/help/minimal-reproducible-example 请提供以下内容: (1) DDL 和样本数据填充,即 CREATE table(s) 加上 INSERT T-SQL 语句。 (2) 你需要做什么,即逻辑和你的代码尝试在 T-SQL 中实现它。 (3) 期望的输出,基于上面#1 中的样本数据。 (4) 你的 SQL Server 版本 (SELECT @@version;)
标签: sql-server xml tsql xquery