2016-04-02 46 views
1
<results> 
    <bonuses> 
     <bonus BID="b1">3</bonus> 
     <bonus BID="b2">6</bonus> 
    </bonuses> 
    <question QID="q1">4</question> 
    <question QID="q2">7</question> 
    <question QID="q3">9</question> 
</results> 

鉴于上述代码,找到所有元素总和的正确方法是什么。即(3 + 6 + 4 + 7 + 9)?Xpath获取所有子孙值的总和

我能得到只获得奖金的总和最接近:

sum(/results/*/*) 
+1

hr_117和vtd_xml_authors有很好的开始。最合适的答案将取决于您的源XML的统一性和一致性。 – Paulb

回答

2

要获得的票据和无孩子尝试:

sum(/results//*[not(*)]) 
+0

这个比我的效率更高! –

1

如何sum(/results/*/*)+ sum(/results/question)