SQL Server XML query()-缺少父节点或名称空间

时间:2018-10-20 15:30:22

标签: sql sql-server xml xquery

我们需要通过查询XML文档的子部分来查询存储在SQL Server数据库中的XML记录中的串联标签。唯一棘手的问题是,我们的某些记录缺少父节点,而其他记录则没有。另一方面是,某些记录的根目录中包含名称空间,而其他记录则不。

这里有两件事,我们如何调整query()中的路径以忽略名称空间并查询所有mynode节,而与名称空间无关。以及如何查询所有mynode部分,而不管是否存在根节点。

select 
    xmlCol.query('*:rootnode/*:mynode/*') 
from 
    DataTable

任何对此的帮助将不胜感激

谢谢

祝你有美好的一天

1 个答案:

答案 0 :(得分:0)

您可以使用双斜杠(//)独立找到父节点所属的节点。

所以我想应该是

select xmlCol.query('//mynode/*') from DataTable

但是有关表的更多信息会有所帮助。

希望有帮助!