Bases de Données / Databases

Site Web de l'équipe BD du LIP6 / LIP6 DB Web Site

Outils pour utilisateurs

Outils du site


site:enseignement:master:mlbda:tmes:xquery

Différences

Ci-dessous, les différences entre deux révisions de la page.

Lien vers cette vue comparative

Les deux révisions précédentesRévision précédente
Prochaine révision
Révision précédente
site:enseignement:master:mlbda:tmes:xquery [22/11/2020 14:36] aminesite:enseignement:master:mlbda:tmes:xquery [22/11/2023 11:28] (Version actuelle) amine
Ligne 22: Ligne 22:
 ==== Récupération des données ==== ==== Récupération des données ====
   * Créer un répertoire de travail pour ce tme.   * Créer un répertoire de travail pour ce tme.
-  * Télécharger et décompresser, dans votre répertoire de travail, le fichier {{ :site:enseignement:master:mlbda:tmes:tmexquery.tgz |tmexquery.tgz}}, cela va créer le répertoire **tmexpath**+  * Télécharger et décompresser, dans votre répertoire de travail, le fichier [[https://nuage.lip6.fr/s/TZtW59sCxTMHqCN|tmexquery.tgz]], cela va créer le répertoire **tmexquery**
      
  
Ligne 42: Ligne 42:
  
 4- Tester la requête ci-dessous et appuyer sur le triangle vert pour exécuter la requête. Les résultats de cette requete sont en rouge dans l'arbre original. 4- Tester la requête ci-dessous et appuyer sur le triangle vert pour exécuter la requête. Les résultats de cette requete sont en rouge dans l'arbre original.
 +<code xquery>
   for $r in //rencontre   for $r in //rencontre
   return $r   return $r
 +</code>
  
 **Remarque 1** Il est évident que si le résultat de votre requete est un nouvel élément construit par copie d'autres éléments de votre document interrogé, les éléments de ce dernier ne seront pas coloriés. **Remarque 1** Il est évident que si le résultat de votre requete est un nouvel élément construit par copie d'autres éléments de votre document interrogé, les éléments de ce dernier ne seront pas coloriés.
Ligne 59: Ligne 60:
   * Les éléments //auction// sous <fc #008000>closed_auctions</fc> correspondent à des enchères <fc #008000>terminées</fc>.   * Les éléments //auction// sous <fc #008000>closed_auctions</fc> correspondent à des enchères <fc #008000>terminées</fc>.
  
-Afin de faciliter la formulation des requêtes, vous pouvez vous appuyer sur structure globale du document XMark représentée ci-dessous.+Afin de faciliter la formulation des requêtes, vous pouvez vous appuyer sur structure globale du document XMark représentée ci-dessous ou sur la **définition de schéma** fournie en [[site:enseignement:master:mlbda:tmes:xquery:adapted-xmark-xsd|XSD]]
  
 {{ :site:enseignement:master:mlbda:xmark-schema.png?direct&700 |}} {{ :site:enseignement:master:mlbda:xmark-schema.png?direct&700 |}}
 +
 + 
 +
  
  
Ligne 69: Ligne 73:
   - La valeur initiale (élément initial) 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 (é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).   - 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 nom et le prix des objets vendus à plus de 480. 
   - Le nom des objets du continent africain   - Le nom des objets du continent africain
   - Le nom des objets du continent africain avec leur prix de vente    - Le nom des objets du continent africain avec leur prix de vente 
Ligne 95: Ligne 99:
 </code> </code>
  
-- Le prix des objets vendus à plus de 480. +- Le nom et le prix des objets vendus à plus de 480. 
 <code xquery> <code xquery>
 for $x in //closed_auctions/auction, for $x in //closed_auctions/auction,
 $y in //item $y in //item
 where $x/price/text()>480 and $x/itemref/@item =$y/@id where $x/price/text()>480 and $x/itemref/@item =$y/@id
-return $x/price+return <result>{ $y/name, $x/price}</result>
 </code> </code>
  
Ligne 128: Ligne 132:
 ===== Exercice 2  ===== ===== Exercice 2  =====
 Ecrire en XQuery les requêtes sur la base tennis (fichiers joueur.xml, gain.xml, rencontre.xml). Ecrire en XQuery les requêtes sur la base tennis (fichiers joueur.xml, gain.xml, rencontre.xml).
- +  - afficher tous les tournois (lieu,année) triés par année, puis lieu. Utiliser la fonction distinct-values(...) pour obtenir un ensemble sans doubles. Le résultat doit être [[site:enseignement:master:mlbda:tmes:xquery:res0.txt]] 
-  * afficher tous les tournois (lieu,année) triés par année, puis lieu. Utiliser la fonction distinct-values(...) pour obtenir un ensemble sans doubles. Le résultat doit être [[site:enseignement:master:mlbda:tmes:xquery:res0.txt]] +  pour chaque tournoi (lieu, année) donner les nom et prénom des participants qui sont dans le fichier gain.xml. Le résultat doit être [[site:enseignement:master:mlbda:tmes:xquery:res1.txt]] 
-  pour chaque tournoi (lieu, année) donner les nom et prénom des participants qui sont dans le fichier gain.xml. Le résultat doit être [[site:enseignement:master:mlbda:tmes:xquery:res1.txt]] +  pour chaque année, donner le nombre tournois auxquels chaque joueur a participé. pour chaque année, donner le nombre tournois auxquels chaque joueur a participé. Le résultat doit être [[site:enseignement:master:mlbda:tmes:xquery:res2.txt]]
-  pour chaque année, donner le nombre tournois auxquels chaque joueur a participé. pour chaque année, donner le nombre tournois auxquels chaque joueur a participé. Le résultat doit être [[site:enseignement:master:mlbda:tmes:xquery:res2.txt]]+
  
 <showif isloggedin> **<fc #ff0000>Réponses</fc>** <showif isloggedin> **<fc #ff0000>Réponses</fc>**
  
- +  * afficher tous les tournois (lieu,année) triés par année, puis lieu. Utiliser la fonction distinct- values(...) pour obtenir un ensemble sans doubles. 
-afficher tous les tournois (lieu,année) triés par année, puis lieu. Utiliser la fonction distinct- values(...) pour obtenir un ensemble sans doubles. Le résultat doit être [[site:enseignement:master:mlbda:tmes:xquery:res0.txt]]+
 <code xquery> <code xquery>
 <tournois> <tournois>
Ligne 148: Ligne 150:
 </tournois> </tournois>
 </code> </code>
- 
 ou bien ou bien
-<code xquery> 
 <code xquery> <code xquery>
 <tournois> <tournois>
Ligne 163: Ligne 163:
 </tournois> </tournois>
 </code> </code>
- 
 ou bien ou bien
- 
 <code xquery> <code xquery>
 <tournois> <tournois>
Ligne 181: Ligne 179:
 </tournois> </tournois>
 </code> </code>
- +  
-pour chaque tournoi (lieu, année) donner les nom et prénom des participants qui sont dans le fichier gain.xml. Le résultat doit être [[site:enseignement:master:mlbda:tmes:xquery:res1.txt]]+  pour chaque tournoi (lieu, année) donner les nom et prénom des participants qui sont dans le fichier gain.xml. 
 <code xquery> <code xquery>
 <tournois> <tournois>
Ligne 205: Ligne 203:
 </code> </code>
  
-pour chaque année, donner le nombre tournois auxquels chaque joueur a participé. pour chaque année, donner le nombre tournois auxquels chaque joueur a participé. Le résultat doit être [[site:enseignement:master:mlbda:tmes:xquery:res2.txt]]+  * pour chaque année, donner le nombre tournois auxquels chaque joueur a participé.  
 <code xquery> <code xquery>
 <reponse> <reponse>
Ligne 225: Ligne 223:
           }           }
 </reponse> </reponse>
- 
 </code> </code>
- +</showif>
-</showif >+
  
 ===== Exercice 3 ===== ===== Exercice 3 =====
site/enseignement/master/mlbda/tmes/xquery.1606052213.txt.gz · Dernière modification : de amine