我有一個XQuery性能問題,我希望有人可以提供幫助。XQuery性能 - 無序的答案?
下面的代碼工作正常,但如果可能的話我想提高性能。 它在做什麼... - 得到在命中 然後 中發現的prodname屬性的所有不同值 - 計算出每個不同值在匹配中發生的次數 - 按順序返回這些不同的值總共爲每個
我有時在$命中有多達12000個項目,所以整個過程可能需要一段時間(反正比我更喜歡它)。
我讀過使用無序表達式/函數可以顯着提高性能。 所以,我的問題是,是否有一種方法可以改善以下代碼的性能 - 使用無序或任何其他方式 - 以及需要進行哪些編碼更改? 我仍然需要「由$ d爲了」讓行,以保持不同值的字母順序對返回
let $tempResult :=
for $d in distinct-values($hits/ancestor-or-self::DOCUMENT/@prodname)
let $q := $hits/ancestor-or-self::DOCUMENT[@prodname = $d] (: all the hits where prodname attribute has value of $d :)
order by $d
return <item zprodname="{$d}" zprodnamenum="{count($q)}"/>