gpt4 book ai didi

xQuery - 计数功能

转载 作者:行者123 更新时间:2023-12-04 10:54:06 25 4
gpt4 key购买 nike

我希望形成一个 xQuery,如果该类别包含多于 x 本书的数量,它会返回一本书的类别。例如,如果我有 4 个类别;音乐、电影、教育、健康,他们都有 1 本书,除了音乐有 3 本书,我想列出那个类别。我尝试了一系列查询,但似乎无法正确解决,每次都没有结果,我相信我需要在某个时候使用不同的值?不太确定。

下面可以看到源的示例,我在编辑器中测试查询,该编辑器不会将源保存为文件,因此我要测试 xQuery 必须从以下内容开始:

例如$x 在/bookstore/book...

<bookstore>        
<book category="Music">
<year>  2005  </year>
<price>  50  </price>
</book>
<book category="Music">
<year>  2010  </year>
<price>  35  </price>
</book>
<book category="Music">
<year>  1982  </year>
<price>  70  </price>
</book>
<book category="Film">
<year>  2000  </year>
<price>  10  </price>
</book>
<book category="Health">
<year>  1965  </year>
<price>  50  </price>
</book>
<book category="Education">
<year>  2012  </year>
<price>  70  </price>
</book>
</bookstore>

任何帮助都非常感谢!

最佳答案

类似于@koopajah 的回答,因为我已经写好了,所以我会提交...

for $category in distinct-values(/*/book/@category)
where count(/*/book[@category=$category]) >= 3
return
<results>{$category}</results>

使用外部文档...
let $doc := doc('input.xml')

for $category in distinct-values($doc/*/book/@category)
where count($doc/*/book[@category=$category]) >= 3
return
<results>{$category}</results>

从评论修改 xquery ...
for $x in doc('input.xml')/bookstore 
for $y in distinct-values($x/book/@category)
where count($x/book[@category=$y]) >= 3
return $y

关于xQuery - 计数功能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13782949/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com