LANGAGES LIES AU MODELE RELATIONNEL • algèbre relationnelle ou langage algébrique • langages d’interrogation réels (SQL, …)
LANGAGE ALGEBRIQUE opérations ensemblistes UNION opération portant sur 2 relations R1 et R2 de même schéma résultat : relation de même schéma ayant pour n-uplets ceux appartenant à R1 ou à R2 ou aux deux relation R1 relation R2 notation : UNION(R1,R2) = R1 R2
- LANGAGE ALGEBRIQUE opérations ensemblistes DIFFERENCE opération portant sur 2 relations de même schéma - relation 1 relation 2 résultat : relation de même schéma ayant pour n-uplets ceux appartenant à R1 mais pas à R2 notation : DIFFERENCE(R1,R2) = R1 - R2
LANGAGE ALGEBRIQUE X opérations ensemblistes PRODUIT CARTESIEN opération portant sur 2 relations R1 et R2 X relation R1 relation R2 résultat : relation ayant pour schéma la juxtaposition des schémas de R1 et R2 et pour n-uplets toutes les combinaisons des n-uplets de R1 et R2 notation : R1 X R2
LANGAGE ALGEBRIQUE opérations spécifiques SELECTION opération portant sur 1 relation R résultat : relation ayant pour schéma celui de R et pour n-uplets ceux vérifiant la condition précisée condition notation : SELECTION(R,condition) = R:condition = σcondition(R) avec condition de la forme : attribut opérateur valeur relation R
LANGAGE ALGEBRIQUE opérations spécifiques PROJECTION opération portant sur 1 relation R résultat : relation ayant pour schéma celui composé des attributs mentionnés en opérande et pour tuples les n-uplets correspondant à ce nouveau schéma atti, attj, ... notation : PROJECTION(R,atti,attj,...) = R[atti,attj,...] = Π atti,attj,… (R) relation R
LANGAGE ALGEBRIQUE θ opérations spécifiques JOINTURE opération portant sur 2 relations R1 et R2 relation R1 relation R2 condition résultat : relation ayant pour schéma la juxtaposition des schémas de R1 et R2 et pour n-uplets toutes les combinaisons des n-uplets de R1 et R2 vérifiant la condition de rapprochement du type atti opérateur attj notation : JOIN(R1,R2,condition) = R1 R2 avec θ = condition si opérateur : « = », équijointure sur une même relation : autojointure on ne conserve qu’un des schémas : semi-jointure θ
LANGAGE ALGEBRIQUE opérations complémentaires INTERSECTION opération portant sur 2 relations R1 et R2 de même schéma résultat : relation de même schéma ayant pour n-uplets ceux appartenant à la fois à R1 et à R2 notation : INTERSECTION(R1,R2) = R1 R2 relation R1 relation R2 R1 R2 = R1 - (R1 - R2) = R2 - (R2 - R1)
LANGAGE ALGEBRIQUE opérations complémentaires QUOTIENT opération portant sur 2 relations R1 (A1,A2,…,An) et R2 (Ap+1,Ap+2,…,An) résultat : relation de schéma (A1,A2,…,Ap) ayant pour p-uplets t ceux tels que pour tout (n-p)-uplet u de R2, le n-uplet tu est dans R1 % notation : R1 % R2 relation R1 relation R2
LANGAGE ALGEBRIQUE opérations complémentaires ANTIPROJECTION opération portant sur 1 relation R(A1,A2) par rapport à un attribut A2 résultat : relation de schéma (A2) ayant pour tuples la projection sur A2 est associée à toutes les valeurs possibles des projections sur A1 des n-uplets de R notation : R(A1,A2,…,An) ]A1[ = R(A1,A2,…,An) % R[A1]
LANGAGE ALGEBRIQUE opérations complémentaires COMPLEMENT opération portant sur 1 relation R résultat : relation de même schéma que R ayant pour tuples ceux appartenant au produit cartésien des domaines des attributs du schéma moins ceux qui appartiennent à R notation : ¬ R