Livre_silo 30 août 2013 16:32 Page 265
¨
©
¨
©
¨
©
¨
©
C o p y r i g h t E y r o l l e s
265
10 – Algèbre relationnelle
• Pour obtenir les valeurs vérifiant C = C 1 ET C 2 , on calcule R 1 ∩ R 2 .
• Pour obtenir les valeurs vérifiant C = C 1 OU C 2 , on calcule R 1 ∪ R 2 .
• Pour obtenir les valeurs ne vérifiant pas C 1 , c’est-à-dire vérifiant C = NON C 1 , on
calcule R − R 1 .
On note alors σ C (R) la relation obtenue en effectuant cette décomposition d’une condition complexe à l’aide des opérateurs ensemblistes et des sélections simples.
En reprenant la relation élève vue précédemment, on peut réaliser la sélection complexe
satisfaisant la condition :
« Soit le nom de l’élève est Michel et son prénom n’est pas Zoé, soit il est en PCSI 1. »
Elle se traduit par la relation suivante :
R = [σ Nom=“Michel” (élève) − σ Prénom=”Zoé” (σ Nom=“Michel” (élève))] ∪ σ Classe=“PCSI1” (élève)
R
Nom
Prénom
Classe
Michel
Florent
MPSI 1
Michel
Zoé
PCSI 1
Il est à noter que, dans ce cas, on peut simplifier l’opération car :
σ Prénom=“Zoé” (σ Nom=“Michel” (élève)) ⊂ σ Prénom=“Zoé” (élève)
et donc :
σ Nom=“Michel” (élève) − σ Prénom=”Zoé” (σ Nom=“Michel” (élève))
= σ Nom=“Michel” (élève) − σ Prénom=“Zoé” (élève)
POUR ALLER PLUS LOIN Simplification des sélections composées
Plus généralement, si R 1 ⊂ R 2 , alors σ C (R 1 ) ⊂ σ C (R 2 ).
La simplification ci-avant se généralise également :
σ C 2 (R) − σ C 1 (σ C 2 (R)) = σ C 2 (R) − σ C 1 (R)
En effet, si une valeur est dans σ C 2 (R) − σ C 1 (σ C 2 (R)), alors elle vérifie C 2 . Comme elle
n’est pas dans σ C 1 (σ C 2 (R)), elle ne vérifie pas C 1 . Elle est donc bien dans σ C 2 (R)−σ C 1 (R).
L’autre inclusion est immédiate.
Précédent

- 278/402

Suivant