我想根据if条件计算子元素。
Declare @MainXml XML =
'<root>
<Data>
<a>FAIL</a>
</Data>
<Data>
<a>PASS</a>
</Data>
<Data>
<a>PASS</a>
</Data>
<root>'
我想得到子元素“a”的值为“FAIL”的“数据”元素的数量。以上计数为1。
我将此计数存储在SQL列中。我怎么能这样做?
答案 0 :(得分:0)
我不知道是否有更直接的方法,但你肯定可以粉碎XML然后计算结果,就像这样(在SQL Server中)
Declare @MainXml XML =
'<root>
<Data>
<a>FAIL</a>
</Data>
<Data>
<a>PASS</a>
</Data>
<Data>
<a>PASS</a>
</Data>
</root>'
select count(1)
from @mainXML.nodes ('root/Data') t(c)
where t.c.value('a[1]', 'char(4)') = 'FAIL'