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:licence:3i009:tmealgebre [28/09/2021 10:43] hubert [Prise en mains de RelaX] |
site:enseignement:licence:3i009:tmealgebre [27/09/2022 14:30] (Version actuelle) hubert |
||
---|---|---|---|
Ligne 7: | Ligne 7: | ||
https://dbis-uibk.github.io/relax/calc/gist/0ed0d9d640284e81f44a79b595a28562 | https://dbis-uibk.github.io/relax/calc/gist/0ed0d9d640284e81f44a79b595a28562 | ||
+ | |||
+ | (seulement si la base foot n'est pas visible dans Relax, récupérer la [[base foot pour Relax|baseFootRelax]]) | ||
Voir les raccourcis clavier : | Voir les raccourcis clavier : | ||
Ligne 24: | Ligne 26: | ||
- | r1 = σ taille < 180 Joueur | + | r1 = σ taille < 180 (Joueur) |
r2 = π NJo (r1) | r2 = π NJo (r1) | ||
r2 | r2 | ||
Attention les noms de relation et d'attributs sont **sensibles à la casse**, contrairement à la convention SQL. | Attention les noms de relation et d'attributs sont **sensibles à la casse**, contrairement à la convention SQL. | ||
- | Ecrire NJo mais pas Njo. | + | Ecrire NJo mais pas Njo. Laisser un **espace** entre un prédicat et un nom de relation : écrire σ a!=b (R) mais pas σ a!=b(R) |
{{ :site:enseignement:licence:3i009:relax_2.png?300 |}} | {{ :site:enseignement:licence:3i009:relax_2.png?300 |}} | ||
Ligne 47: | Ligne 49: | ||
* **Match** (Eq1, Eq2, Date, St), | * **Match** (Eq1, Eq2, Date, St), | ||
* **Distance** (st1, st2, nbkm) | * **Distance** (st1, st2, nbkm) | ||
- | Rappel : les deux relations Match et Distance sont asymétriques. Distance n'est pas réflexive. | + | Rappel : les deux relations Match et Distance sont symétriques. Distance n'est pas réflexive. |
+ | |||
+ | Un sponsor sponsorise une équipe si ce sponsor sponsorise au moins un joueur de l'équipe. | ||
+ | |||
+ | Noter que Relax permet de renommer entièrement une table (ex. σ x.a > 1 ( ρ x ( A ) )), plutôt que de renommer des attributs, ce qui peut simplifier l'écriture des requêtes. | ||
/*Rmq: ceux qui ont suivi 2i009 connaissent cette base*/ | /*Rmq: ceux qui ont suivi 2i009 connaissent cette base*/ | ||
+ | /* | ||
Pour avoir des relations symétriques, définir DistanceSym et MatchSym comme cela: | Pour avoir des relations symétriques, définir DistanceSym et MatchSym comme cela: | ||
- | + | ||
Distancemirror1 = ρ st3 ← st1, st4 ← st2 (Distance) | Distancemirror1 = ρ st3 ← st1, st4 ← st2 (Distance) | ||
Distancemirror2 = ρ st2 ← st3, st1 ← st4 (Distancemirror1) | Distancemirror2 = ρ st2 ← st3, st1 ← st4 (Distancemirror1) | ||
Ligne 66: | Ligne 74: | ||
* **DistanceSym** (st1, st2, nbkm) | * **DistanceSym** (st1, st2, nbkm) | ||
+ | */ | ||
Ecrire et tester les requêtes suivantes. Les résultats attendus sont dans le fichier {{:site:enseignement:licence:3i009:foofleraevalresultats.pdf|}} | Ecrire et tester les requêtes suivantes. Les résultats attendus sont dans le fichier {{:site:enseignement:licence:3i009:foofleraevalresultats.pdf|}} | ||
Ligne 88: | Ligne 96: | ||
* p. Quel sponsor a sponsorisé exactement un joueur par équipe ? (attention le résultat est vide et non pas Adadis) | * p. Quel sponsor a sponsorisé exactement un joueur par équipe ? (attention le résultat est vide et non pas Adadis) | ||
* q : réécrire la requête o sans utiliser l'opérateur divide | * q : réécrire la requête o sans utiliser l'opérateur divide | ||
- | |||