Farklı değerlere sahip bir diziye sahip olmak, aynı durumu paylaşan ve kötü ingilizce için özür dilerim, diğerinin yanında olan iki öğeyi bir sorguda nasıl karşılaştırabilirim, o İşte Anadilim değil xml var:Xquery, bir dizideki bir öğeyi bir sonraki karşılaştırmak için
<prac1516>
<torns>
<torn codi="A" nom="Matí" preu="100" />
<torn codi="B" nom="Tarda" preu="150" />
<torn codi="C" nom="Nit" preu="200" />
</torns>
<tipus>
<espec id="e1" torn="C">Musica</espec>
<espec id="e2">Cine</espec>
<espec id="e3" torn="B">Xerrada</espec>
<espec id="e4">Festa Infantil</espec>
</tipus>
<clients>
<client id="1">Marti</client>
<client id="2">Jana</client>
<client id="3">Edu</client>
<client id="4">Berta</client>
<client id="5">Laia</client>
<client id="6">Santi</client>
<client id="7">Pau</client>
<client id="8">Mia</client>
</clients>
<calendari>
<reserva client="1" data="2016-01-01" torn="A" espec="e2" />
<reserva client="2" data="2016-01-01" torn="B" espec="e3" />
<reserva client="3" data="2016-01-02" torn="C" espec="e3" />
<reserva client="4" data="2016-01-03" torn="A" espec="e2" />
<reserva client="4" data="2016-01-03" torn="B" espec="e4" />
<reserva client="2" data="2016-01-03" torn="C" espec="e4" />
<reserva client="8" data="2016-01-04" torn="A" espec="e3" />
<reserva client="4" data="2016-01-04" torn="C" espec="e3" />
<reserva client="3" data="2016-01-05" torn="A" espec="e1" />
<reserva client="7" data="2016-01-05" torn="B" espec="e1" />
<reserva client="2" data="2016-01-06" torn="A" espec="e1" />
<reserva client="1" data="2016-01-06" torn="B" espec="e2" />
<reserva client="3" data="2016-01-06" torn="B" espec="e2" />
<reserva client="4" data="2016-01-08" torn="B" espec="e3" />
<reserva client="7" data="2016-01-08" torn="C" espec="e2" />
<reserva client="8" data="2016-01-09" torn="A" espec="e2" />
<reserva client="9" data="2016-01-09" torn="B" espec="e4" />
<reserva client="2" data="2016-01-09" torn="C" espec="e4" />
<reserva client="2" data="2016-01-10" torn="A" espec="e3" />
<reserva client="1" data="2016-01-10" torn="B" espec="e2" />
<reserva client="1" data="2016-01-10" torn="C" espec="e1" />
</calendari>
</prac1516>
bir yırtık bir var ki tarihleri (veri) görmek istiyorum
ve bu yırtık B veya yırtık B sonra ve bu yırtık C
sonraBunun istediğimi yapacağını sanıyordum ama hayır! :
let $w :=
for $x in //reserva
let $d := //reserva/@data
return $d
for $r in (1 to 21)
where (//reserva[@data=$w[$r]]/@torn='A' and //reserva[@data=$w[$r+1]]/@torn='B') or (//reserva[@data=$w[$r]]/@torn='B'and //reserva[@data=$w[$r+1]]/@torn='C')
return $w[$r]
, XML verilen söz dizisi üretmek için örnek XML ve temel XQuery'yi gönderin. Ve sonuç olarak ne elde etmek istediğinizi açıklayın ... – har07
Güncellenmiş soru çok daha iyi! +1 – har07
'data' özniteliği benzersiz değil, bu nedenle 'data' öznitelik değeri ile filtrelenen asıl 'reserva' elemanını alamıyorsunuz ... – har07