Question sur les exemples de requêtes en écriture algébrique à traduire en requête conjonctive

Cette formation présente les fondements des bases de données relationnelles et enseigne l’écriture de requêtes SQL.

Modérateurs : Équipe sillages.info, Benjamin NGUYEN

COLELLA
Messages : 9
Enregistré le : jeu. 9 août 2018 07:07

Question sur les exemples de requêtes en écriture algébrique à traduire en requête conjonctive

Messagepar COLELLA » mer. 15 août 2018 08:24

Bonjour, j'ai des questions à propos des exemples de traduction d'une requête algébrique en requête conjonctive :

Exemple 1 :

"Considérons la requête algébrique suivante :

πAC (σA=C′(σC=A′(σB=1 (R)⋈ρ|ABC∕A'B'C'(R))))

où sort(R) = ABC. Une requête conjonctive équivalente est :

{ x,z | ∃y' (R (x,1,z) ∧ R (z,y',x)}"

a - On nous indique que A=C' et C=A'. Pourquoi ne retrouve-t-on pas x⟺z' et z⟺x' ?

b - Je ne comprends pas pourquoi ρ|ABC∕A'B'C'(R) ⟺ R(z,y',x).

Exemple 2 :

"Soit sort(R) = ABC et sort(S) = BCD. Alors nous avons :

πAD (σC=1 (R ⋈ S )) ↔

πAD (σC=1 (R ) ⋈ S) ↔

πAD (πABD (σC=1 (R) ⋈ S)) ↔

πAD (πAB (σC=1 (R)) ⋈ πBD (S ))"


Pour le passage de la ligne 2 à 3, je ne comprends le passage de σC=1 (R ) à πABD (σC=1 (R). Pouvez-vous m'expliquer s'il vous plait ?

Je vous remercie vivement par avance et reste à votre écoute,

Salutations respectueuses,

Anna Colella

Benjamin NGUYEN
Messages : 15
Enregistré le : ven. 9 juin 2017 09:59

Re: Question sur les exemples de requêtes en écriture algébrique à traduire en requête conjonctive

Messagepar Benjamin NGUYEN » jeu. 6 sept. 2018 09:34

Bonjour,

Vous avez toujours le même problème de commutativité entre les opérateurs, ou de compréhension de la projection.

si je projette FILM sur TITRE c'est pareil que de d'abord le projeter sur TITRE, DIRECTEUR, puis de projeter sur TITRE. mais si on veut faire une restriction sur DIRECTEUR, on ne peut pas le faire après avoir projeté juste sur TITRE, ce qui enlève la colonne DIRECTEUR.

Cordialement,

BN

Astrid Allemandou
Messages : 12
Enregistré le : sam. 22 déc. 2018 15:21

Re: Question sur les exemples de requêtes en écriture algébrique à traduire en requête conjonctive

Messagepar Astrid Allemandou » sam. 22 déc. 2018 16:42

Bonjour,

Pour répondre à la première question d'abord :
Dans une requête conjonctive, une égalité est exprimée par la réutilisation d'une même variable (ici, x est employé deux fois, z idem).
Dans la requête algébrique, on est obligés d'utiliser le symbole =.

Par contre, j'aurais bien voulu des précisions comme sur la deuxième question de Colella. Que veut dire "ABC/A'B'C'" ? Si c'est la même chose que A > A', B > B', C > C', pourquoi peut-on réutiliser C (dans C = A') ? ABC ne devrait plus "exister". Les deux noms de l'attribut coexistent-ils ?


Retourner vers « Bases de données relationnelles »

Qui est en ligne

Utilisateurs parcourant ce forum : Aucun utilisateur enregistré et 1 invité