1

特定の製品カテゴリの平均価格を合計する必要があります。現在、同じカテゴリ タイプをマージしてカウントすることができました。今度は、さまざまなカテゴリのすべての価格を合計する必要があります (現在、クエリですべての価格を選択しています)。 )

例: カテゴリ A の製品が 5 つある場合、それらの 5 つの価格を選択して合計する必要があります。

クエリ:

let $hk := doc('http://etutor.dke.uni-linz.ac.at/etutor/XML?id=1')/handelskette/produkte/produkt

for $x in distinct-values($hk/kategorie)
let $c := count($hk[kategorie eq $x])
let $a:= sum($hk/ekPreis)

return <kategorie kname="{$x}">
<anzahl>{$c}</anzahl>
<avgEkPreis>{$a div $c}</avgEkPreis>
</kategorie>

XML :

<handelskette>
    <produkte>
        <produkt ean="0-666-4567-2-22">
            <bezeichnung>Autoschampoo</bezeichnung>
            <kategorie>Pflege</kategorie>
            <ekPreis>35</ekPreis>
            <listPreis>69</listPreis>
        </produkt>
        <produkt ean="0-777-4997-2-43">
            <bezeichnung>Glanzpolitur</bezeichnung>
            <kategorie>Pflege</kategorie>
            <ekPreis>70</ekPreis>
            <listPreis>119</listPreis>
        </produkt>
        <produkt ean="1-4444-652-8-88">
            <bezeichnung>CD-Wechsler</bezeichnung>
            <kategorie>Audio</kategorie>
            <ekPreis>2345</ekPreis>
            <listPreis>3999</listPreis>
        </produkt>
    </produkte>  
</handelskette>

どんな助けにもとても感謝しています

4

3 に答える 3