我想在 SQL Server 中列出所有带有命名空间前缀的 xml 节点。
以下查询的结果不包含节点的命名空间前缀。是否可以将 cbc:ID 列为“cbc:ID”而不仅仅是“ID”?
;WITH XMLNAMESPACES(
DEFAULT 'urn:oasis:names:specification:ubl:schema:xsd:Order-2'
,'urn:oasis:names:specification:ubl:schema:xsd:CommonAggregateComponents-2' AS cac
,'urn:oasis:names:specification:ubl:schema:xsd:CommonBasicComponents-2' AS cbc
)
SELECT C.value('local-name(.)', 'VARCHAR(MAX)') AS node_name
FROM @xml.nodes('/Order/*') AS T(C)