我有一个名为:xmlindex的表,其中包含一个名为:xmlrec的列,该列保存xml文件的结构和值。
其中一些记录缺少名为:<ISO></ISO>
我的问题是:需要运行哪种类型的查询才能找到xmlindex表中缺少<ISO>
标记的所有记录?
这是一个包含iso标记的xmlrecord xml示例:
<XMLRecord>
<pn>0042761</pn>
<SRI>4.40</SRI>
<igm>/images/images/0042761.gif</img>
<ISO>ZW</ISO>
<ListPrice>$5.50</ListPrice>
</XMLRecord>
一个有多个iso(看标签上的小差别):
<XMLRecord>
<pn>0042762</pn>
<SRI>4.40</SRI>
<igm>/images/images/0042762.gif</img>
<ISOs>ZW+NZ+AU+BR</ISOs>
<ListPrice>$5.50</ListPrice>
</XMLRecord>
缺少iso标记的一条记录是xml结构不包含此类标记的记录。
任何例子都非常感谢。
谢谢您。
最佳答案
您可以使用XQuery exist方法。
检查XML文档中的任何位置:
select *
from XMLIndex
where XMLRec.exist('//ISO') = 0
检查特定位置:
where XMLRec.exist('/XMLRecord/ISO') = 0
关于sql - SQL Server:查找缺少XML标记的记录,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/42307182/