2014-04-01 32 views
0

我想要計算每個區域「zona」的產品數量。我想財產以後這樣的:xquery使用什麼表達式?

Zona: 10 Num Productes: 4 
Zona: 20 Num Productes: 3 
Zona: 30 Num Productes: 4 
Zona: 40 Num Productes: 2 

,但我得到的是:

Zona: 10 Num Productes: 0 
Zona: 10 Num Productes: 0 
Zona: 20 Num Productes: 0 
Zona: 20 Num Productes: 0 
Zona: 30 Num Productes: 0 
Zona: 30 Num Productes: 0 

卵:40個民Productes:0

我使用的查詢:

for $prod in /productos/produc let $codi_prod:=$prod/cod_prod return {concat('Zona:',$prod/cod_zona,' ','Num Productes:',count($prod/codi_prod))} 

的xml:

<productos> 
<TITULO>DATOS DE LA TABLA PRODUCTOS</TITULO> 
<produc> 
<cod_prod>1010</cod_prod> 
<denominacion>Placa Base MSI G41M-P26</denominacion> 
<precio>50</precio> 
<stock_actual>10</stock_actual> 
<stock_minimo>3</stock_minimo> 
<cod_zona>10</cod_zona> 
</produc> 
<produc> 
<cod_prod>1011</cod_prod> 
<denominacion>Micro Intel Core i5-2320</denominacion> 
<precio>120</precio> 
<stock_actual>3</stock_actual> 
<stock_minimo>5</stock_minimo> 
<cod_zona>10</cod_zona> 
</produc> 
<produc> 

回答

0

使用

for $zone in distinct-values(/productos/produc/cod_zona) 
return concat('Zona:', $zone,' ','Num Productes:',count(/productos/produc[cod_zona = $zone]/codi_prod)) 
+0

它的工作原理與 「透明」,但產品仍然是0。我的意思是我得到的是:透明10 PRODUCTOS 0,透明20個PRODUCTOS 0,透明30個PRODUCTOS 0,透明40個PRODUCTOS 0. – user3325719

+0

好吧,它的工作問題是在計數(/ productos/produc [cod_zona = $ zone]/codi_prod))。它的「cod_prod」而不是「codi_prod」。非常感謝Martin。 – user3325719

相關問題