Consulta sencilla de Xquery
Publicado por Daniel (1 intervención) el 29/03/2015 21:01:14
Un saludo y comentar que es mi primera ves que participo en el foro, estoy empezando con xquery y tengo unas dudas en cuanto a las funciones de agregacion count(),
tengo este xml :
y la consulta es la siguiente : cuantas acontecimientos son de teatro, lo he implementado pero asi:
Pero me da como resultado:
<acontecimientos>1</acontecimientos>
<acontecimientos>1</acontecimientos>
<acontecimientos>1</acontecimientos>
<acontecimientos>1</acontecimientos>
<acontecimientos>1</acontecimientos>
<acontecimientos>1</acontecimientos>
<acontecimientos>1</acontecimientos>
el resultado tendria que ser : <acontecimientos> 7</acontecimientos> por decir un numero . he buscado consultas de este tipo pero son muy escasas
Decir que el xml es mucho mas largo , en lo que me puedan ayudar de antemando muchas gracias ando perdido en esto....
tengo este xml :
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
<?xml version="1.0" encoding="utf-8"?>
<oferta>
<esdeveniment edat_minima="18">
<ubicacio>
<barri>Ciutat Vella</barri>
<edifici>Filmoteca de Catalunya</edifici>
<adreca>Plaça Salvador Seguí, 1</adreca>
</ubicacio>
<data>
<dia>11/04/2014</dia>
<hora_inici>16</hora_inici>
<hora_final>18</hora_final>
</data>
<artista>
<nom>Eduardo Chapero-Jackson</nom>
<pais_naixement>Espanya</pais_naixement>
<any_naixement>1971</any_naixement>
</artista>
<titol>Los mundos sutiles</titol>
<preu>4</preu>
<categoria>Cinema</categoria>
</esdeveniment>
<esdeveniment edat_minima="2">
<ubicacio>
<barri>Poblenou</barri>
<edifici>Casino l'Aliança</edifici>
<adreca>Rambla del Poblenou, 42</adreca>
</ubicacio>
<data>
<dia>11/04/2014</dia>
<hora_inici>18</hora_inici>
<hora_final>20</hora_final>
</data>
<artista>
<nom>El negrito producciones</nom>
<pais_naixement>Marroc</pais_naixement>
<any_naixement>1971</any_naixement>
</artista>
<titol>Tarzán, el musical</titol>
<preu>0</preu>
<categoria>Teatre</categoria>
</esdeveniment>
y la consulta es la siguiente : cuantas acontecimientos son de teatro, lo he implementado pero asi:
1
2
3
4
5
6
7
8
xquery version "3.0";
for $x in doc("Ejercicio/esdeveniments.xml")//esdeveniment
where $x/categoria="Teatre"
return
<acontecimientos>{count($x/categoria)}</acontecimientos>
Pero me da como resultado:
<acontecimientos>1</acontecimientos>
<acontecimientos>1</acontecimientos>
<acontecimientos>1</acontecimientos>
<acontecimientos>1</acontecimientos>
<acontecimientos>1</acontecimientos>
<acontecimientos>1</acontecimientos>
<acontecimientos>1</acontecimientos>
el resultado tendria que ser : <acontecimientos> 7</acontecimientos> por decir un numero . he buscado consultas de este tipo pero son muy escasas
Decir que el xml es mucho mas largo , en lo que me puedan ayudar de antemando muchas gracias ando perdido en esto....
Valora esta pregunta
0