0
我的XML文檔,如下所示:XQuery的分組,並找到最大值
<books>
<book><author>A</author></book>
<book><author>B</author></book>
<book><author>C</author></book>
<book><author>B</author></book>
<book><author>C</author></book>
</books>
現在,查詢應與大多數書籍返回作者的姓名。在這種情況下B,C
(因爲兩者具有2本書)。的問題是,它必須是隻有一個查詢,所以找到最大(2),然後用2本書籍搜索作者是不是在這種情況下是可接受的解決方案。
這正是OP說他不想要的,因爲它有2次通過,儘管我認爲這根本不可能。 – wst 2013-02-14 21:11:47
這是一個單一的查詢。在不存儲中間結果的情況下,這是不可能的,因爲你必須在過濾之前找出最大值。另一種方法是排序'$ authors'並與第一結果進行對照,但可能有更好的優化潛力,但在兩端也打破了執行流水線。 – 2013-02-14 21:15:58
我同意你的看法,但這種調用一個查詢是舒展。我想在OP的原始問題中,他說他不想要2次傳球。如果你想要這種查詢,它需要一個帶有頻率數據的索引。 – wst 2013-02-15 00:27:08