Ci-dessous, les différences entre deux révisions de la page.
Les deux révisions précédentes Révision précédente Prochaine révision | Révision précédente | ||
site:enseignement:master:mlbda:tmes:xquery1 [04/12/2019 11:13] amine [Exercice 1] |
site:enseignement:master:mlbda:tmes:xquery1 [22/11/2020 15:04] (Version actuelle) amine [TME XQuery : séance 1] |
||
---|---|---|---|
Ligne 1: | Ligne 1: | ||
{{indexmenu_n>80}} | {{indexmenu_n>80}} | ||
- | ====== TME XQuery : séance 1 ====== | + | ====== TME XQuery : séance 1 (ancienne page)====== |
===== Documentation XQuery ===== | ===== Documentation XQuery ===== | ||
* Lire les précisions apportées dans [[xqueryfaq]] | * Lire les précisions apportées dans [[xqueryfaq]] | ||
Ligne 58: | Ligne 58: | ||
- Le nom de la personne dont l'identifiant est "person0". | - Le nom de la personne dont l'identifiant est "person0". | ||
- | - La valeur initiale des trois premières enchères <fc #ff0000>en cours</fc>. | + | - La valeur initiale (élément initial) des trois premières enchères <fc #ff0000>en cours</fc>. |
- | - La valeur de la première et de la dernière augmentation effectuée sur les trois premières des enchères en cours, selon l'ordre des enchères défini dans les données xml (ne pas trier les enchères chronologiquement). | + | - La valeur de la première et de la dernière augmentation (élément increase de bidder) effectuée sur les trois premières des enchères en cours, selon l'ordre des enchères défini dans les données xml (ne pas trier les enchères chronologiquement). |
- Le prix des objets vendus à plus de 480. | - Le prix des objets vendus à plus de 480. | ||
- Le nom des objets du continent africain | - Le nom des objets du continent africain | ||
Ligne 75: | Ligne 75: | ||
- La valeur initiale des trois premières enchères <fc #ff0000>en cours</fc>. | - La valeur initiale des trois premières enchères <fc #ff0000>en cours</fc>. | ||
+ | <code xquery> | ||
for $x in /site/open_auctions/auction[position()<4] | for $x in /site/open_auctions/auction[position()<4] | ||
return <result id="{$x/@id}" >{$x/initial}</result> | return <result id="{$x/@id}" >{$x/initial}</result> | ||
+ | </code> | ||
- La valeur de la première et de la dernière augmentation effectuée sur les trois premières des enchères en cours, selon l'ordre des enchères défini dans les données xml (ne pas trier les enchères chronologiquement). | - La valeur de la première et de la dernière augmentation effectuée sur les trois premières des enchères en cours, selon l'ordre des enchères défini dans les données xml (ne pas trier les enchères chronologiquement). | ||
- | + | <code xquery> | |
+ | for $x in /site/open_auctions/auction[position()<4] | ||
+ | return <result id="{$x/@id}" ><first>{$x/bidder[1]/increase/text()}</first><last>{$x/bidder[last()]/increase/text()}</last></result> | ||
+ | </code> | ||
- Le prix des objets vendus à plus de 480. | - Le prix des objets vendus à plus de 480. | ||
- | | + | <code xquery> |
+ | for $x in //closed_auctions/auction, | ||
+ | $y in //item | ||
+ | where $x/price/text()>480 and $x/itemref/@item =$y/@id | ||
+ | return $x/price | ||
+ | </code> | ||
- Le nom des objets du continent africain | - Le nom des objets du continent africain | ||
+ | <code xquery> | ||
+ | for $x in //regions/africa | ||
+ | return $x/item/name | ||
+ | </code> | ||
- Le nom des objets du continent africain avec leur prix de vente | - Le nom des objets du continent africain avec leur prix de vente | ||
+ | <code xquery> | ||
+ | for $x in //regions/africa/item | ||
+ | for $y in //closed_auctions/auction | ||
+ | where $x/@id=$y/itemref/@item | ||
+ | return <res>{$x/name, $y/price}</res> | ||
+ | </code> | ||
- Le nombre de personnes qui n'ont pas de page web (i.e. les personnes sans élément homepage) | - Le nombre de personnes qui n'ont pas de page web (i.e. les personnes sans élément homepage) | ||
+ | <code xquery> | ||
+ | count(for $p in //person | ||
+ | where empty($p/homepage) | ||
+ | return $p) | ||
+ | </code> | ||
</showif> | </showif> |