如何在XQuery中获得多个结果

时间:2018-04-19 14:26:18

标签: xml xquery

我正在使用XQuery在社交媒体上的一个主题上计算与外观相关的注释的出现次数。但是,我想根据评论者的性别来计算它们。

到目前为止,我已经让XQuery通过使用这个来计算女性所有出现的外观评论:

for $t in doc ("women.xml") 
return count ($t/thread/comment[@gender="female]/appearance)

然而,我需要一些帮助来解决我如何调整这个数量同时出现男性和女性出现评论时的情况。女人的数量,然后男人的数量。

我一直在研究这段代码:

let $sex := ("female", "male")
for $t in doc ("women.xml")
return count($t/thread/comment[@gender=$sex[$1]]/appearance)

并发现它返回女性的计数,如果[@ gender = $ sex [$ 1]],并返回男性的计数,如果[@ gender = $ s [$ 2]],但我想知道是否有一种我可以调整它的方式,以便同时在输出中打印它们的计数。

感谢您的帮助:)

1 个答案:

答案 0 :(得分:1)

嵌套你的for循环:

for $sex in ("female", "male")
for $t in doc ("women.xml")
return count($t/thread/comment[@gender=$sex]/appearance)