Vous êtes sur la page 1sur 31

Le modle relationnel 234433386.

doc
Algbre
Et
Calcul Relationnel
Afpa St Brieuc 17/06/2014 Pae !1

Le modle relationnel 234433386.doc
LALGBRE RELATIONNELLE:
OPERATIONS DE BASE
Lalgbre relationnelle a "t" in#ent"e par $. Co comme une collection d%op"ration&
formelle& 'ui ai&&ent &ur de& relation& et produi&ent de& relation& en r"&ultat& ()odd7*+.
*n peut con&id"rer 'ue l%al,re relationnelle e&t au- relation& ce 'u%e&t l%arit.m"ti'ue
au- entier&. )ette al,re/ 'ui con&titue un en&em,le d%op"ration& "l"mentaire& a&&oci"e&
au modle relationnel/ e&t &an& doute une de& force& e&&entielle& du modle. )odd a
initialement introduit .uit op"ration&/ dont certaine& peu#ent 0tre compo&"e& 1 partir
d%autre&. 2an& cette &ection/ nou& allon& introduire &i- op"ration& 'ui permettent de
d"duire le& autre& et 'ui &ont appel"e& ici op"ration& de ,a&e. 3ou& introduiron& en&uite
'uel'ue& op"ration& additionnelle& 'ui &ont parfoi& utili&"e&. 2e& auteur& ont propo&"
d%autre& op"ration& 'ui peu#ent tou4our& &e d"duire de& op"ration& de ,a&e (2elo,el83.
5aier83+.
Le& op"ration& de ,a&e peu#ent 0tre cla&&"e& en deu- t6pe&! le& op"ration& en&em,li&te&
traditionnelle& 7une relation "tant un en&em,le de tuple&/ elle peut 0tre trait"e comme tel8
et le& op"ration& &p"cifi'ue&.
Le& op"ration& en&em,li&te& &ont de& op"ration& ,inaire&/ c%e&t919dire 'u%1 partir de deu-
relation& elle& en con&trui&ent une troi&ime. )e &ont l%union/ la i!!"rence et le #rouit
cart"$ien.
Le& op"ration& &p"cifi'ue& &ont le& op"ration& unaire& de #ro%ection et re$triction 'ui/ 1
partir d%une relation/ en con&trui&ent une autre/ et l%op"ration ,inaire de 4ointure. 3ou&
allon& d"finir toute& ce& op"ration& plu& pr"ci&"ment
Afpa St Brieuc 17/06/2014 Pae !2

Le modle relationnel 234433386.doc
&' LES OP(RATIONS ENSE)BLISTES
&'&'*NION
Lunion e&t l%op"ration cla&&i'ue de la t."orie de& en&em,le& adapt"e au- relation& de
m0me &c."ma.
Notion : *nion +*nion,
Opration portant sur deux relations de mme schma RELATION1 et RELAT10N2
consistant construire une relation de mme schma RELAT10N! a"ant pour tuples ceux
appartenant RELATION1 ou RELATION2 ou aux deux relations#
Plu&ieur& notation& ont "t" introduite&pour cette op"ration &elon le& auteur& !
:$LA;<*31 = :$LA;<*32
=3<*3 7:$LA;<*31/ :$LA;<*328
APP$32 7:$LA;<*31/ :$LA;<*328
La notation rap.i'ue repr"&ent"e fiure 1 e&t au&&i utili&"e. A titre d%e-emple/ l%union de&
relation& ><3S 1 et ><3S 2 e&t repr"&ent"e fiure 2. 7relation ><3S8
$i%ure 1& reprsentation %raphi'ue de l(union
Afpa St Brieuc 17/06/2014 Pae !3

RSULTAT
RELATION 1 RELATION 2
=
Le modle relationnel 234433386.doc
-in$ & Cru )ill R"gion Couleur
)?$3AS 1@83 B$A=A*LA<S :*=B$
;*CAD 1@80 ALSA)$ BLA3)
;A>$L 1@86 :?*3$ :*S$
-in$ . Cru )ill R"gion Couleur
;*CAD 1@80 ALSA)$ BLA3)
)?ABL<S1@8E B*=:B*B3$ :*=B$
-in$ Cru )ill R"gion Couleur
)?$3AS 1@83 B$A=A*LA<S :*=B$
;*CAD 1@80 ALSA)$ BLA3)
;A>$L 1@86 :?*3$ :*S$
)?ABL<S1@8E B*=:B*B3$ :*=B$
$i%ure 2 ) Exemple dunion
Afpa St Brieuc 17/06/2014 Pae !4

Le modle relationnel 234433386.doc
&'.'DI//ERENCE
La diffrence e&t "alement l%op"ration cla&&i'ue de la t."orie de& en&em,le& adapt"e au-
relation& de m0me &c."ma.
Notion : Di!!"rence +Di!!erence,
Opration portant sur deux relations de mme schma RELATION1 et REL#AT10N2 consistant
construire une relation de mme schma RELAT10N! a"ant pour tuples ceux appartenant
RELATION1 et nappartement pas la RELATION2
La diff"rence e&t un op"rateur non commutatif ! l%ordre de& relation& op"rande& e&t donc
important. Plu&ieur& notation& ont "t" introduite& pour cette op"ration &elon le& auteur&
:$LA;<*31 9 :$LA;<*32
2<FF$:$3)$ 7:$LA;<*31/ :$LA;<*328
5<3=S 7:$LA;<*31/ :$LA;<*328
La notation rap.i'ue repr"&ent"e fiure 3 e&t au&&i utili&"e. G titre d%e-emple/ la diff"rence de&
relation& ><3S 1 9 ><3S 2 e&t repr"&ent"e fiure 4 7><3S8
$i%ure !& Reprsentation %raphi'ue de la di**rence
-in$ & Cru )ill R"gion Couleur
)?$3AS 1@83 B$A=A*LA<S :*=B$
;*CAD 1@80 ALSA)$ BLA3)
;A>$L 1@86 :?*3$ :*S$
-in$ . Cru )ill R"gion Couleur
;*CAD 1@80 ALSA)$ BLA3)
)?ABL<S1@8E B*=:B*B3$ :*=B$
-in$ Cru )ill R"gion Couleur
)?$3AS 1@83 B$A=A*LA<S :*=B$
;A>$L 1@86 :?*3$ :*S$
$i%ure + ) Exemple de di**rence
Afpa St Brieuc 17/06/2014 Pae !E

:$S=L;A;
:$LA;<*3 1 :$LA;<*3 2
9
Le modle relationnel 234433386.doc
&'0' PROD*IT CART(SIEN
Le produit cartsien e&t l%op"ration en&em,li&te 'ue nou& a#on& rappel"e ci9de&&u& pour d"finir
le concept de relation. $lle e&t adapt"e au- relation&. )ette foi&/ le& deu- relation& n%ont pa&
n"ce&&it" d%a#oir le m0me &c."ma.
Notion : Prouit cart"$ien +Carte$ian #rouct,
Opration portant sur deux relations RELATION1 et RELATION2 consistant construire une
relation RELATION! a"ant pour schma la concatnation de ceux des relations oprandes et
pour tuples toutes les com,inaisons des tuples des relations oprandes#
2e& notation& po&&i,le& pour cette op"ration &ont!
:$LA;<*31 H :$LA;<*32
P:*2=); 7:$LA;<*31/ :$LA;<*328
;<5$S 7:$LA;<*32/ :$LA;<*328
La notation rap.i'ue repr"&ent"e fiure E e&t au&&i utili&"e. G titre d%e-emple/ la relation ><3S
repr"&ent"e fiure 6 e&t le produit cart"&ien de& deu- relation& ):=S et A33$$S de la m0me
fiure.
$i%ure - & Exemple de produit cartsien
Afpa St Brieuc 17/06/2014 Pae !6

:$S=L;A;
:$LA;<*31 :$LA;<*32
H
Le modle relationnel 234433386.doc
-in$ & Cru R"gion Couleur
)?$3AS B$A=A*LA<S :*=B$
;*CAD ALSA)$ BLA3)
;A>$L :?*3$ :*S$
1
Ann"e )ill
1@80
1@8E
-in$ Cru R"gion Couleur )ill
)?$3AS B$A=A*LA<S :*=B$ 1@80
;*CAD ALSA)$ BLA3) 1@80
;A>$L :?*3$ :*S$ 1@80
)?$3AS B$A=A*LA<S :*=B$ 1@8E
;*CAD ALSA)$ BLA3) 1@8E
;A>$L :?*3$ :*S$ 1@8E
$i%ure . ) Exemple du produit cartesien
Afpa St Brieuc 17/06/2014 Pae !7

Le modle relationnel 234433386.doc
.' LES OP(RATIONS SP(CI/I2*ES
.'&' PRO3ECTION
La projection e&t une op"ration &p"cifi'ue au- relation& 'ui permet de &upprimer de& attri,ut&
d%une relation. Son nom pro#ient du fait 'u%elle permet de pa&&er d%une relation n9aire 1 une
relation p9aire a#ec pIn donc d%un e&pace 1 n dimen&ion& 1 un e&pace 1 moin& de dimen&ion&.
Notion 4 Pro%ection +Pro%ection,
Opration sur une relation RELATION 1 consistant composer une relation RELATION2 en
enle/ant la relation initiale tous les attri,uts non mentionns en oprandes 0aussi ,ien au
ni/eau du schma 'ue des tuples1 et en liminant les tuples en dou,le 'ui sont conser/s une
seule *ois#
Le& notation& &ui#ante& &ont utili&"e& pour cette op"ration/ en d"&inant par Attri,uti/ Attri,ut4/
Attri,utm le& attri,ut& de pro4ection!
Attri,uti/ Attri,ut2/ ... Attri,utm 7:$LA;<*318
:$LA;<*3 1 (Attri,uti/ Attri,ut2/ ... Attri,utm +
P:*A$); 7:$LA;<*3 1/ Attri,uti/ Attri,ut2/ ... Attri,utm8
La notation rap.i'ue repr"&ent"e fiure 7 e&t au&&i utili&"e. Le trapJe .oriJontal &inifie 'ue
l%on r"duit le nom,re de colonne& de la relation ! partant du nom,re repr"&ent" par la ,a&e/ on
pa&&e au nom,re repr"&ent" par l%anti9,a&e. La fiure 8 donne un e-emple de pro4ection d%une
relation ><3S comportant au&&i l%attri,ut K=AL<;$ &ur le& attri,ut& ):= et :$B<*3.
$i%ure 3 & Reprsentation %raphi'ue de la pro2ection
Afpa St Brieuc 17/06/2014 Pae !8

:$S=L;A;
A1/A2/..An
:$LA;<*3
Le modle relationnel 234433386.doc
-in$ & Cru )ill R"gion 2ualit"
>*L3AD 1@83 B*=:B*B3$ A
>*L3AD 1@7@ B*=:B*B3$ B
)?$3AS 1@83 B$A=A*LA<S A
A=L<$3AS 1@86 B$A=A*LA<S )
Pro4ect 7:$LA;<*3 1/ )ru/ :"ion8
Pro%+-in$, Cru R"gion
>*L3AD B*=:B*B3$
)?$3AS B$A=A*LA<S
A=L<$3AS B$A=A*LA<S
$i%ure 4 & Exemple de pro2ection
.'.' RESTRICTION
La restriction e&t au&&i une op"ration &p"cifi'ue unaire 'ui produit une nou#elle relation en
enle#ant de& tuple& 1 la relation op"rande &elon un critre.
Notion : Re$triction +Re$triction,
Opration sur une relation RELATION i produisant une relation RELATION2 de mme schma
mais comportant les seuls tuples 'ui /ri*ient la condition prcise en ar%ument#
Le& condition& po&&i,le& &ont du t6pe!
IAttri,utL I*p"rateurL I>aleurL
oM l%op"rateur e&t un op"rateur de comparai&on c.oi&i parmi NO5 I/ I/ L5 L5 P. L%attri,ut doit
appartenir 1 la relation &ur la'uelle &%appli'ue le critre. Par e-emple/ pour la relation ><3S/
):= 6 Q).a,li&R e&t une condition de re&triction po&&i,le. 2$B:$L 12 e&t une autre condition
po&&i,le. <l e&t au&&i po&&i,le d%utili&er de& compo&ition& loi'ue& de critre& &imple&/ c%e&t919
dire de& QetR et QouR de condition& "l"mentaire&. *n pourra par e-emple utili&" le critre ):= 6
Q).a,li&R et 2$B:$L 12/ ou encore le critre ):= 6 Q).a,li&R ou 2$B:$ 6 12. ;oute
compo&ition de critre& #alide& par con4onction et di&4onction 7de& parent.&e& peu#ent 0tre
utili&"e& pour pr"ci&er le& priorit"&8 e&t #alide. 3oton& 'ue le& compo&ition& loi'ue& peu#ent
au&&i 0tre o,tenue& par union et inter&ection 7#oir ci9de&&ou&8 de relation& re&treinte&.
Le& notation& &ui#ante& &ont utili&"e& pour la re&triction!
condition 7:$LA;<*318
:$LA;<*3 1 ()ondition+
:$S;:<); 7:$LA;<*31/ )ondition8
ain&i 'ue la notation rap.i'ue repr"&ent"e fiure @. Le trapJe #ertical &inifie 'ue l%on r"duit
le nom,re de tuple& de la relation ! partant du nom,re repr"&ent" par le cSt" auc.e on pa&&e au
nom,re repr"&ent" par le cSt" droit. La fiure 10 repr"&ente la re&triction d%une relation ><3S
Afpa St Brieuc 17/06/2014 Pae !@

Le modle relationnel 234433386.doc
enric.ie d%un attri,ut K=AL<;$ par la condition millL1@83
$i%ure 6& Reprsentation %raphi'ue de la restriction
-in$ Cru )ill R"gion 2ualit"
>*L3AD 1@83 B*=:B*B3$ A
>*L3AD 1@7@ B*=:B*B3$ B
)?$3AS 1@83 B$A=A*LA<S A
A=L<$3AS 1@86 B$A=A*LA<S )
:$S;:<); 7:$LA;<*31/ cru L 1@838
-in$ Cru )ill R"gion 2ualit"
A=L<$3AS 1@86 B$A=A*LA<S )
$i%ure 10& Exemple de restriction
Afpa St Brieuc 17/06/2014 Pae !10

:$S=L;A;
Ai * >aleur
:$LA;<*3
Le modle relationnel 234433386.doc
.'0' 3OINT*RE
La jointure e&t une de& op"ration& e&&entielle& de l%al,re relationnelle/ &an& doute la plu&
difficile 1 r"ali&er dan& le& &6&tme&. La 4ointure permet de compo&er deu- relation& 1 l%aide
d%un critre de 4ointure. $lle peut 0tre #ue comme une e-ten&ion du produit cart"&ien a#ec une
condition permettant de comparer de& attri,ut&. 3ou& la d"finiron& comme &uit!
Notion : 3ointure +3oin,
Opration consistant rapprocher selon une condition5 les tuples de deux relations
RELATION1 et RELATION2 a*in de *ormer une troisi7me relation RELATION! 'ui contient
lensem,le de tous les tuples o,tenus en concatnant un tuple de RELATION1 et un tuple de
RELATION2 /ri*iant la condition de rapprochement#
La 4ointure de deu- relation& produit donc une troi&ime relation 'ui contient toute& le&
com,inai&on& de tuple& de& deu- relation& initiale& 'ui &ati&font la condition &p"cifi"e. La
condition doit ,ien &Tr permettre le rapproc.ement de& deu- relation&/ et donc 0tre du t6pe!
IAttri,ut 1L Iop"rateurL IAttri,ut2L
oM Attri,ut1 appartient 1 :$LA;<*31 et Attri,ut2 1 :$LA;<*32.
Selon le t6pe d%op"rateur/ on di&tinue!
U l%"'ui94ointure dan& le ca& oM l%op"rateur e&t 65 'ui e&t une #"rita,le compo&ition de relation&
au &en& mat."mati'ue du terme
U l%in"'ui94ointure dan& le& autre& ca&/ c%e&t919dire a#ec un de& op"rateur& I/ I/ L/ L
2an& le ca& d%"'ui94ointure/ le& deu- attri,ut& "au- apparai&&ent c.acun dan& le r"&ultat! il 6 a
donc duplication d%une m0me #aleur dan& c.a'ue tuple. Afin d%"liminer cette redondance/ on
d"finit la 4ointure naturelle comme &uit!
Notion : 3ointure naturelle +Natural 3oin,
Opration consistant rapprocher selon une condition les tuples de deux relations
RELATION1 et RELATION2 a*in de *ormer une troisi7me relation RELATION! dont les
attri,uts sont lunion des attri,uts RELATION1 et de RELATION2 dont les tuples sont o,tenus
en composant un tuple de RELATION1 et un T89LE de RELATION2 a"ant mme /aleurs pour
les attri,uts de mme nom#
Afpa St Brieuc 17/06/2014 Pae !11

Le modle relationnel 234433386.doc
L%op"ration de 4ointure e&t repr"&ent"e par l%une de& notation& &ui#ante&/ la condition "tant
&implement omi&e dan& le ca& de 4ointure naturelle 7c%e&t alor& l%"alit" de& attri,ut& de m0me
nom8!
:$LA;<*3 1 :$LA;<*32
)ondition
A*<3 7:$LA;<*31/ :$LA;<*32/ )ondition8
La fiure 11 donne la repr"&entation rap.i'ue de l%op"ration de 4ointure alor& 'ue la fiure 12
illu&tre cette op"ration en effectuant la 4ointure naturelle de& deu- relation& ><3S et
L*)AL<SA;<*3. L%in"'ui94ointure de ce& deu- relation& &elon la condition K=AL<;$ 7
K=AL<;$ 5*D$33$ e&t repr"&ent"e fiure 13. *n &uppo&e l1 'ue le& 'ualit"& &ont cod"e& par
ordre d"croi&&ant A/ B/ )/ 2/ $.
$i%ure 11 ) reprsentation %raphi'ue de la :ointure
-in$ Cru )ill 2ualit"
>*L3AD 1@83 A
>*L3AD 1@7@ B
)?ABL<S 1@83 A
A=L<$3AS 1@86 )
Aointure
Locali&ation )ru :"ion Kual5o6
>*L3AD B*=:B*B3$ A
)?ABL<S B*=:B*B3$ A
)?ABL<S )AL<F*:3<$ B
-inReg Cru )ill R"gion 2ualit" )o8enne
>*L3AD 1@83 B*=:B*B3$ A
>*L3AD 1@7@ B*=:B*B3$ B
)?ABL<S 1@83 B*=:B*B3$ A
)?ABL<S 1@83 )AL<F*:3<$ A
$i%ure 12& :ointure naturelle des relation ;IN< et LO=ALI<ATION
Afpa St Brieuc 17/06/2014 Pae !12

:$S=L;A;
Ai B4

:$LA;<*3 1 :$LA;<*3 2
Le modle relationnel 234433386.doc
-in$ Cru )ill 2ualit"
>*L3AD 1@83 A
>*L3AD 1@7@ B
)?$3AS 1@83 A
A=L<$3AS 1@86 )
Aoint 7Kualit" Kual5o68
Locali&ation )ru :"ion Kual5o6
>*L3AD B*=:B*B3$ A
)?ABL<S B*=:B*B3$ A
)?ABL<S )AL<F*:3<$ B
-inReg Cru )ill 2ualit" Cru R"gion 2ual)o8
>*L3AD1@83 A )?ABL<S )AL<F*:3<$ B
>*L3AD1@7@ B >*L3AD B*=:B*B3$ A
>*L3AD 1@7@ B )?ABL<S B*=:B*B3$ A
)?ABL<S1@7@ A )?ABL<S )AL<F*:3<$ B
A=L<$3AS 1@86 ) >*L3AD B*=:B*B3$ A
A=L<$3AS 1@86 ) )?ABL<S B*=:B*B3$ A
A=L<$3AS 1@86 ) )?ABL<S )AL<F*:3<$ B
$i%ure 1!& In'ui>2ointure des relation ;IN< et LO=ALI<ATION
La 4ointure n%e&t pa& tou4our& con&id"r"e comme une op"ration de ,a&e de l%al,re
relationnelle. $n effet/ &i l%on "tend la d"finition de la re&triction de manire 1 con&id"rer de&
condition& multiattri,ut& du t6pe IAttri,ut 1L I*p"rateurL IAttri,ut2L/ alor& la 4ointure peut
0tre o,tenue par un produit cart"&ien &ui#i d%une re&triction du r"&ultat comme &uit!
A*<3 7:$LA;<*31/ :$LA;<*32/ )ondition8 6
:$S;:<); 77:$LA;<*31 H :$LA;<*328/ )ondition8
)ompte tenu de l%importance de la 4ointure/ nou& a#on& pr"f"r" ici d"finir la 4ointure comme une
op"ration de ,a&e.
Afpa St Brieuc 17/06/2014 Pae !13

Le modle relationnel 234433386.doc
LALGBRE RELATIONNELLE:
OP(RATIONS D(RI-(ES
Le& op"ration& pr"&ent"e& ci9de&&ou& &ont parfoi& utili&"e& pour manipuler de& relation&. $lle&
peu#ent en "n"ral 0tre o,tenue& par com,inai&on de& op"ration& pr"c"dente&. 2an& certain& ca&
7)ompl"ment/ Aointure e-terne8/ leur e-pre&&ion 1 partir de& op"ration& de ,a&e n"ce&&ite la
manipulation de relation& con&tante& 1 tuple& pr"9d"fini&/ telle& 'ue la relation o,tenue par le
produit cart"&ien de& domaine&/ ou encore celle compo&"e d%un &eul tuple 1 #aleur& toute&
nulle&.
9'&' INTERSECTION
Lintersection e&t l%op"ration cla&&i'ue de la t."orie de& en&em,le& adapt"e au- relation& de
m0me &c."ma.
Notion : Inter$ection +Inter$ection,
Opration sur deux relations de mme schma RELATIONet RELATION2 consistant
construire une relation de mme schma RELATION! a"ant pour tuples ceux appartenant la
*ois RELATION1 et RELATION2
Plu&ieur& notation& ont "t" introduite& pour cette op"ration &elon le& auteur&
:$LA;<*31 :$LA;<*32
<3;$:S$); 7:$LA;<*31/ :$LA;<*328
A32 7:$LA;<*31/ :$LA;<*328
La notation rap.i'ue repr"&ent"e fiure 14 e&t au&&i utili&"e.
Afpa St Brieuc 17/06/2014 Pae !14

:VS=L;A;
Le modle relationnel 234433386.doc
Afpa St Brieuc 17/06/2014 Pae !1E

$i%ure 1+ & Reprsentation %raphi'ue de lintersection
:$LA;<*31 :$LA;<*32
Le modle relationnel 234433386.doc
L%inter&ection e&t une op"ration redondante a#ec le& op"ration& de ,a&e en ce &en& 'u%il e&t
po&&i,le de l%o,tenir 1 partir de la diff"rence 1 l%aide d%une de& formule& &ui#ante&!
:$LA;<*31 :$LA;<*32 6 :$LA;<*31 9 7:$LA;<*31 9 :$LA;<*328
:$LA;<*31 :$LA;<*32 6 :$LA;<*32 9 7:$LA;<*32 9 :$LA;<*318
9'. DI-ISION
La division permet de rec.erc.er dan& une relation le& &ou&9tuple& 'ui &ont compl"t"& par tou& ceu- d%une autre
relation. $lle permet ain&i d%"la,orer la r"pon&e 1 de& 'ue&tion& de la forme Q'uel 'ue &oit -/ trou#er 6R de
manire &imple.
2e manire formelle/ d"&inon& par ai une #aleur 'uelcon'ue de lWattri,ut Ai.
=n tuple e&t alor& une &uite de #aleur& Ia1/a2/a3/X..L.=tili&ant ce& notation&/ le 'uotient de 2 par d e&t d"fini
par !
K O NIa1/ a2/ XapL tel 'ue 'uel'ue &oit IapY1/ XanL de d/ Ia1/ a2/Xap/ apY1/X/ anL appartient 1 2P
Le& notation& po&&i,le& pour la di#i&ion &ont !
2 d
2<><S<*3 72/d8
ain&i 'ue la repr"&entation rap.i'ue donn"e fiure1E.
=n e-emple de la di#i&ion e&t donn" fiure 16.
Afpa St Brieuc 17/06/2014 Pae !16

Notion: Di:i$ion +Di:i$ion,
Opration consistant construire le 'uotient de la relation ? 0A 15 A2### Ap5 Ap@ 15 ... An1 par la
relation d0Ap@ 15 ... An1 comme la relation A0A 15 A2### Ap1 dont les tuples sont ceux 'ui
concatns tout tuple de d donnent un tuple de ?#
:$S=L;A;
:$LA;<*31 :$LA;<*32

Le modle relationnel 234433386.doc


$i%ure 1- & Reprsentation %raphi'ue de la di/ision
$i%ure 1. & Exemple de di/ision
5.3. CO)PLE)ENT
Le complment permet de trou#er le& tuple& 'ui n%appartiennent pa& 1 une relation. <l &uppo&e 1 priori 'ue le&
domaine& &ont fini& 7&inon on o,tient de& relation& infinie&8.
Notion : Co;#l";ent
Ensem,le des tuples du produit cartsien des domaines des attri,uts dune relation nappartenant pas cette
relation#
Le compl"ment d%une relation :$LA;<*3 i e&t not" au c.oi-!
3*; 7:$LA;<*3i8
)*5P 7:$LA;<*3i8
Afpa St Brieuc 17/06/2014 Pae !17

>*L3AD 1@83 A
>*L3AD 1@7@ B
)?ABL<S 1@83 A
)?ABL<S 1@7@ A
A=L<$3AS1@86 A
-INS ):= 5<LL Kualite
2*ALITE 5ill Kualite
1@83 A
1@7@ A
CR* cru
)?ABL<S
Le modle relationnel 234433386.doc
La fiure 17 illu&tre cette op"ration dan& un ca& &imple. )%e&t une op"ration peu utili&"e du fait 'u%elle permet
de "n"rer de& tuple& 'ui ne &ont pa& dan& la ,a&e/ en "n"ral tr& nom,reu-. Si l%on note par H 2i le produit
cart"&ien de& domaine&/ le compl"ment d%une relation :$LA;<*3 i e&t o,tenu 1 partir de la diff"rence comme
&uit!
3*; 7:$LA;<*3i8 O H 2i 9 :$LA;<*3i
Afpa St Brieuc 17/06/2014 Pae !18

Le modle relationnel 234433386.doc
2omaine& ! ):= O N)?ABL<S/>*L3AD/ 5$2*)P
)*=L$=: O N:*=B$/ BLA3)/ :*S$P
)*5PL$5$3;
$i%ure 13&Exemple de complment
(CLATE)ENT
clatement (Fain8*+ e&t une op"ration 'ui n%appartient pa& #raiment 1 l%al,re relationnelle pui&'u%elle donne deu-
relation& en r"&ultat&/ 1 partir d%une. $lle e&t cependant utile pour partitionner une relation .oriJontalement en deu- &ou&9
relation&. G ce titre/ elle e&t con&id"r"e comme une e-ten&ion de l%al,re.
Eclatement
*p"ration con&i&tant 1 cr"er deu- relation& 1 partir dWune relation :$LA;<*31 et dWune condition/ la premire contenant le&
tuple& de :$LA;<*31 #"rifiant lacondition et la deu-ime ceu- ne la #"rifiant pa&
)et op"rateur appli'u" 1 la relation :$LA;<*3i "nre donc deu- relation& :1 et :2 'ui &eraient o,tenue& par re&triction
comme &uit!
:1 O :$S;:<); 7:$LA;<*3i/ )ondition8
:2 O :$S;:<); 7:$LA;<*3i/ 3on )ondition8
CO*L<CR* )ru )ouleur
)?ABL<S :*=B$
)?ABL<S :*S$
>*L3AD :*=B$
5$2*) :*S$
5$2*) BLA3)
3*;7)*=LZ):=8 )ru )ouleur
)?ABL<S BLA3)
>*L3AD :*S$
>*L3AD BLA3)
5$2*) :*=B$
Le modle relationnel 234433386.doc
3OINT*RE E1TERNE
Le& 4ointure& d"finie& ci9de&&u& perdent de& tuple& d%au moin& une relation 'uand le& relation& 4ointe& n%ont pa& de pro4ection&
identi'ue& &ur l%attri,ut de 4ointure. Pour pr"&er#er toute& le& information& dan& tou& le& ca&/ il e&t n"ce&&aire& de d"finir de&
4ointure& 'ui con&er#ent le& tuple& &an& corre&pondant a#ec de& #aleur& nulle& a&&oci"e& 'uand n"ce&&aire. )%e&t dan& ce ,ut
'ue )odd ()odd7@+ a introduit le& jointures externes#
)ette op"ration e&t tr& utile/ en particulier pour compo&er de& #ue& &an& perte d%information&. $lle &e note en "n"ral comme
:$LA;<*31 :$LA;<*32
'
$H;9A*<3 7:$LA;<*31/ :$LA;<*328
La 4ointure e-terne permet par e-emple de 4oindre de& ta,le& )L<$3;S et )*55A32$S &ur un num"ro de client commun/
en ardant le& client& &an& commande et le& commande& &an& client a&&oci". $lle e&t donc en prati'ue tr& utile. *n peut au&&i
di&tinuer la 4ointure e-terne droite 'ui arde &eulement le& tuple& &an& corre&pondant de la relation de droite. *n notera celle9
ci H. ou :$H;9A*<3. 2e m0me/ on peut di&tinuer la 4ointure e-terne auc.e .H ou L$H;9A*<38. =n e-emple de 4ointure
e-terne complte e&t donn" fiure 18.
Notion : 3ointure e=terne +E=ternal 3oin,
Opration %nrant une relation RELATION! partir de deux relations RELATION I
etRELATION2 par 2ointure de ces deux relations et a2out des tuples de RELATION i
etRELATION2 ne participant pas la 2ointure a/ec des /aleurs nulles pour les attri,uts de lautre
relation#
Le modle relationnel 234433386.doc
'
$i%ure 14& Exemple de 2ointure externe
-INS )ru 5ill Kualite
>*L3AD 1@83 A
>*L3AD 1@7@ B
A=L<$3AS 1@86 )
LOCALISATION )ru :eion Kualmo6
>*L3AD Bourone A
)?ABL<S Bourone A
)?ABL<S )alifornie B
-INSREG )ru 5ill Kualite :"ion Kual5o6
>*L3AD 1@83 A Bourone A
>*L3AD 1@7@ B Bourone A
)?ABL<S Bourone A
)?ABL<S )alifornie B
A=L<$3AS 1@86 )
Le modle relationnel 234433386.doc
# SE)I>3OINT*RE
2an& certain& ca&/ lor& de l%e-"cution d%une 4ointure/ il n%e&t pa& n"ce&&aire de con&er#er tou& le& attri,ut& de& deu-
relation& en r"&ultat ! &eul& le& attri,ut& d%une de& deu- relation& &ont con&er#"&. =ne op"ration &p"cifi'ue de &emi9
4ointure/ tr& utile pour optimi&er l%"#aluation de& 'ue&tion& a "t" d"finie (Ber&tein8l+.
La &emi94ointure de la relation :$LA;<*31 par relation :$LA;<*32 e&t not"e!
:$LA;<*31 :$LA;<*32
S$5<9A*<3 7:$LA;<*3l/ :$LA;<*328
$lle e&t "'ui#alente 1 la 4ointure de& relation& :$LA;<*31 et :$LA;<*32 &ui#ie par une pro4ection du r"&ultat &ur le&
attri,ut& de la relation :$LA;<*31.
G noter 'ue l%op"ration n%e&t pa& &6m"tri'ue pui&'ue &eul& de& tuple& de la premire relation &ont con&er#"&. $lle peut
0tre #ue comme une re&triction de la relation :$LA;<*3 1 par le& #aleur& de& attri,ut& de 4ointure fiurant dan& la
relation :$LA;<*32
La fiure 1@ illu&tre cette op"ration de &emi94ointure.
Notion : Se;i>%ointure +Se;i>%oin,
Opration portant sur deux relations RELATION1i et RELATION2 donnant en
rsultat les tuples de RELATION1i 'ui participent la 2ointure des deux
relations#
Le modle relationnel 234433386.doc
Exemple16 de semi>2ointure
><3S ):= 5<LL K=AL<;$
>*L3AD 1@83 A
>*L3AD 1@7@ B
)?ABL<S 1@83 A
A=L<$3AS 1@86 )
L*)AL<SA;<*3 ):= :$B<*3 K=AL5*D
>*L3AD B*=:B*B3$ A
)?ABL<S B*=:B*B3$ A
)?ABL<S )AL<F*:3<$ B
><3S ):= 5<LL K=AL<;$
>*L3AD 1@83 A
>*L3AD 1@7@ B
)?ABL<S 1@83 A
Le modle relationnel 234433386.doc
LES E1PRESSIONS DE LALGBRE RELATIONNELLE
G partir de& op"ration& de l%al,re relationnelle/ il e&t po&&i,le de compo&er un lanae d%interroation de ,a&e& de
donn"e&. =ne 'ue&tion peut alor& 0tre repr"&ent"e par un ar,re d%op"rateur& relationnel&. Le parap.ra&ae en anlai& de
telle& e-pre&&ion& e&t 1 la ,a&e du lanae SKL 'ue nou& "tudieron& dan& le c.apitre &ui#ant.
?'&' LANGAGE ALGEBRI2*E
$n utili&ant de& e-pre&&ion& d%op"ration& de l%al,re relationnelle/ il e&t po&&i,le d%"la,orer le& r"pon&e& 1 la plupart de&
'ue&tion& 'ue l%on peut po&er 1 une ,a&e de donn"e& relationnelle. Plu& pr"ci&"ment/ le& op"ration& de ,a&e de l%al,re
relationnelle con&titue un lan%a%e complet5 c%e&t919dire a6ant la pui&&ance de la loi'ue du premier ordre.
Afin d%illu&trer/ nou& e-primon& 'uel'ue& 'ue&tion& &ur la ,a&e 2$B=S;A;<*3 . )e& 'ue&tion& peu#ent 0tre e-prim"e&
comme de& e-pre&&ion& d%op"ration&/ ou comme de& op"ration& &ucce&&i#e& appli'u"e& &ur de& relation& interm"diaire&
ou de ,a&e/ "n"rant de& relation& interm"diaire&. Pour de& rai&on& de clart"/ nou& a#on& c.oi&i cette deu-ime
repr"&entation. L%e-pre&&ion peut 0tre o,tenue &implement en &upprimant le& relation& interm"diaire& not"e& :i.
+2&, Donner le$ egr"$ e$ :in$ e cru$ )ORGON et e )ILLESI)E &@AB:
:1 O :$S;:<); 7><3S/ ):=S O Q5*:B*3R8
:2 O :$S;:<); 7><3S/ 5<LL$S<5$ O 1@788
:3 O <3;$:S$); 7:1/ :28:$S=L;A; O P:*A$); 7:3/ 2$B:$8
+2., Donner le$ no;$ et #r"no;$ e$ bu:eur$ e )ORGON ou CCENAS:
:i O :$S;:<); 7><3S/ ):= O Q5*:B*3R8
:2 O 7><3S/ ):=S O Q)?$3ASR8
:3 O =3<*3 7:1/ :28
:4 O A*<3 7:3/ AB=S8
:E O A*<3 7:4/ B=>$=:S8
:$S=L;A; O P:*A$); (R5, 3*5/ P:$3*58
20, Donner le$ no;$ et are$$e$ e$ bu:eur$ a8ant bu #lu$ e &D bouteille$ e CEabli$ &@A? a:ec le egr" e
ce :in:
:1 O :$S;:<); 7AB=S/ K=A3;<;$L108
:2 O :$S;:<); 7><3S/ ):= O FCCABLISG,
:3 O :$S;:<); 7><3S/ 5<LL$S<5$ O 1@768
:4 O <3;$:S$); 7:2/ :38
:E O A*<3 7:1/ :48
:6 O P:*A$); 0R-5 3B/ 2$B:$8
:7 O A*<3 7:6/ B=>$=:S8
:$S=L;A; O P:*A$); 7:7/ 3*5/ A2:$SS$/ 2$B:$8
Le modle relationnel 234433386.doc
2H, Donner le$ no;$ e$ bu:eur$ na8ant bu Iue u )orgon!
:1 O A*<37B=>$=:S/AB=S/><3S8
:2 O :$S;:<);7:1/ ):= O Q5*:B*3R8
:3 O P:*A$);7:2/ 3*58
:4 O :$S;:<);7:1/ ):= Q5*:B*3R8
O P:*A$);7:1/ 3*58
:$S=L;A; O 5<3=S7:3 9 R-1
?'. ARBRE ALGEBRI2*E
=ne 'ue&tion e-prim"e &ou& forme dun proramme dWop"ration& de lWal,re relationnelle peut 0tre repr"&ent"e par un
ar,re relationnel.Le& n[ud& corre&pondent au- repr"&entation&rap.i'ue& de& op"ration& indi'u"e& ci9de&&u&et le& arc&
au- flot& de donn"e& entre op"ration&.
Afin d%illu&trer/ la 'ue&tion Q3om& et Pr"nom& de& ,u#eur& .a,itant Pari& a6ant ,u du ).a,li& depui& le 1er 4an#ier
1@@2R peut 0tre e-prim"e 1 l%aide de l%ar,re repr"&ent" fiure 20. Plu&ieur& ar,re& "'ui#alent& peu#ent 0tre d"duit& d%un
ar,re donn" 1l%aide de rle& de tran&formation &imple&/ telle& 'ue permutation de& 4ointure& et re&triction&/ permutation
de& pro4ection& et de& 4ointure&/ reroupement de& inter&ection& &ur une m0me relation/ etc. )e& tran&formation& &ont 1 la
,a&e de& tec.ni'ue& d%optimi&ation de 'ue&tion& 'ui d"pa&&ent le &u4et de ce c.apitre. La fiure 21 donne un ar,re
"'ui#alent 1 celui de la fiure 20/ o,tenu par de&cente de pro4ection& et reroupement d%inter&ection&.
La compo&ition d%op"ration& de l%al,re relationnelle ne n"ce&&ite pa& tou4our& d%attendre le r"&ultat de l%op"ration
pr"c"dente pour e-"cuter l%op"ration &ui#ante. :e&triction/ pro4ection et 4ointure peu#ent ain&i 0tre e-"cut"e& par de&
alorit.me& 1flot& de donn"e&. 2e& op"rateur& &e &ucc"dant &ur un ar,re peu#ent donc 0tre e-"cut"& en parallle par de&
alorit.me& Qpipe9lineR. 2e& op"rateur& fiurant &ur de& ,ranc.e& di&tincte& d%un ar,re peu#ent au&&i 0tre e-"cut"& en
parallle de manire ind"pendante. La repr"&entation par ar,re al",ri'ue met ain&i en "#idence le& po&&i,ilit"& de
parall"li&me et le& enc.a\nement& n"ce&&aire&. )e& propri"t"& de& ar,re& relationnel& &ont importante& pour optimi&er le&
'ue&tion& dan& de& conte-te& parallle&.
Notion : Arbre relationnel +Relational tree,
Ar,re dont les noeuds correspondent des oprations de l(al%7,re relationnelle et les arcs des
relations de ,ase ou temporaires reprsentant des *lots de donnes entre oprations
Le modle relationnel 234433386.doc
:$S=L;A;
3*5/P:$3*5
A.2A;$ LO ]@2901901]
>.):= O ])?ABL<S]
A.3> O >.3>
><3S >
B.3B O A.3B
AB=S A
B.A2:$SS$ L<C$ ]PA:<S]
B=>$=:S B
$i%ure 20 &Exemple d(ar,re reprsentant une 'uestion#
Le modle relationnel 234433386.doc
RE<8LTAT
B#NOC5B#9RENOC
A#N; D ;#N;
B#9RENOC
A#N;
B#NOC
B#NB D A#NB ;#N;
NOC5NB ;#=R8 D =EABLI<F
9RENOC
A#N;
A#NB
;IN< ;
B#A?RE<<E LIGE F9ARI<F
A#?ATE HD F62#01#01F
B=>$=:S B AB=S A
$i%ure 21 & autre /ersion 'ui/alente
Le modle relationnel 234433386.doc
A /ONCTIONS ET AGREGATS
LWal,re relationnelle e&t in&uffi&ante pour traiter de #"rita,le& application& de& ,a&e& de donn"e&/ telle& la &ui#ie de
production/ la e&tion de ,udet/ X.<l e&t en effet n"ce&&aire dWeffectuer de& calcul& &ur la ,a&e pour &upporter de telle&
application&. )We&t lWo,4et de lWintroduction de& fonction& de calcul au &ein de lWal,re et du &upportde& ar"at&.
A'& /onction$ e calcul
La po&&i,ilit" dWeffectuer de& calcul& &ur le& attri,ut& e&t &implement introduite en "n"rali&ant pro4ection/ re&triction et
4ointure par introduction de fonction&.Ain&i/ tout attri,ut apparai&&ant en arument dWune op"ration e&t remplac" par un
e-pre&&ion dWattri,ut&.
Notion : E=#re$$ion Jattribut$ +Attribute e=#re$$ion1
Expression arithmti'ue construite partir d(atri,uts d(une relation et de constantes5 par application de *onctions
arithmti'ues successi/es#
2e& e-emple& d%e-pre&&ion& d%attri,ut& &ont!
10 Y E0 9 23
K=A3;<;$ I-0
K=A3;<;$ ^ 2$B:$ /100
K=A3;<;$ 9 K=A3;<;$ ^ 2$B:$ /100.
2e telle& e-pre&&ion& peu#ent donc 0tre utili&"e& comme arument& de pro4ection&/ de re&triction& #oire de 4ointure&. Le
proramme d%al,re relationnelle &ui#ant illu&tre ce& po&&i,ilit"&!
:1 O A*<3 7><3S/ AB=S/ 2$B:$^K=A3;<;$/100L K=A3;<;$/l*8
:2 O :$S;:<);7:1/ 2$B:$^K=A3;<;$/100L 108
:$S=L;A; O P:*A$);7:2/ ):=/ K=A3;<;$ 9 K=A3;<;$^2$B:$/1008
La notion d%e-pre&&ion d%attri,ut& peut 0tre "n"rali&"e a#ec de& fonction& autre& 'ue le& fonction& arit.m"ti'ue&/ par e-emple
de& fonction& "crite& dan& un lanae e-terne. *n a,outit ain&i 1 une "n"rali&ation de l%al,re relationnelle au- fonction&
(_aniolo8E+.
Le modle relationnel 234433386.doc
S*PPORT DES AGREGATS
Le& e-pre&&ion& d%attri,ut& permettent d%effectuer de& op"ration& de calcul en line/ &ur de& attri,ut& de relation&. $n prati'ue/
il e&t n"ce&&aire d%effectuer de& op"ration& de calcul en colonne&/ &ur de& tuple& de relation&/ cela par e-emple afin de &ommer
de& d"pen&e&/ etc. Le concept dagrgat permet de telle& op"ration&.
Le& fonction& de calcul &ur en&em,le le& plu& &ou#ent propo&"e& &ont le& &ui#ante&!
S*55$ permettant de calculer la &omme de& "l"ment& d%un en&em,le
5*D$33$ permettant de calculer la mo6enne de& "l"ment& d%un en&em,le
5<3<5=5 permettant de &"lectionner l%"l"ment minimum d%un en&em,le
5AH<5=5 permettant de &"lectionner l%"l"ment ma-imum d%un en&em,le
)*5P;$ permettant de compter le& "l"ment& d%un en&em,le.
La fiure 22 illu&tre le concept d%ar"at. La ta,le ><3S e&t enric.ie d%un attri,ut K=A3;<;$. L%ar"at repr"&ent" calcule la
&omme de& 'uantit"& par ):=. L%op"ration &%"crit de manire "n"rale
: O AB:$BA;7I:elationL.` IAttri,ut 1L` IFonctionL K IAttri,ut2L L,
IAttri,ut1L repr"&ente un ou plu&ieur& attri,ut& utili&"& pour le partitionnement.
Fonction e&t la fonction d%en&em,le appli'u"e 1 l%attri,ut IAttri,ut2L.
Par e-emple/ on "crit!
:$S=L;A; O AB:$BA;7><3S` ):=` S=5NK=A3;<;$P8
pour l%ar"at illu&tr" fiure 22. A noter 'u%un ar"at peut &%effectuer &an& partitionnement` on peut par e-emple calculer
&implement la mo6enne de tou& le& der"& comme &uit 7#oir fiure 228!
:$S=L;A; O AB:$BA;7><3S` ` 5*DN2$B:$P8.
AGREGAT +-INSM)ON+DEGRE,,
AGREGAT+-INSMCR*MS*)+2*ANTITE,,
Notion : Agr"gat +Aggregat,
9artitionnement horiJontal dune relation en *onction des /aleurs dun %roupe dattri,uts5
sui/i dun re%roupement par application dune *onction de calcul sur ensem,le#
-INS Cru )ill Degr" 2uantit"
>*L3AD 1@83 11/7 100
>*L3AD 1@7@ 11/3 200
)?ABL<S 1@83 11/4 2E0
)?ABL<S 1@@2 11/8 300
A=L<$3AS 1@86 12/0 400
5*D 2er"
2Ber"
11/64
S*) Cru 2uantit"
>*L3AD 300
)?ABL<S EE0
A=L<$3AS 400
Le modle relationnel 234433386.doc
B' -*ES
Le& /ues permettent de d"finir de& relation& #irtuelle& et d% a&&urer une meilleure ind"9
pendance proramme&9donn"e&.
B'&' D(/INITION DE -*E
=ne #ue e&t une ta,le d%un &c."ma e-terne. Afin d%e-primer la tran&formation permettant
de compo&er une #ue 1 partir de& ta,le& d%une ,a&e/ le& &6&tme& relationnel& utili&ent le
lanae d%interroation. <l e&t donc po&&i,le de d"finir la notion de #ue comme &uit.
=ne #ue e&t donc #irtuelle ! c%e&t une fen0tre d6nami'ue &eulement partiellement
mat"riali&"e lor& de& interroation&. $lle n%a pa& d%e-i&tence p.6&i'ue/ au moin&
lor&'u%elle n%e&t pa& acc"d"e. <l e&t cependant po&&i,le d%a&&ocier une ta,le mat"riali&"e 1
une #ue ! on parle alor& de /ue concr7te# La maintenance de& #ue& concrte& e&t un
pro,lme difficile/ car il faut r"percuter le& mi&e& 1 4our de& relation& de ,a&e &ur la #ue
concrte. Sauf indication contraire/ une #ue re&tera donc non mat"riali&"e ! elle &er#ira 1
modifier le& 'ue&tion& de l%utili&ateur portant &ur elle pour le& faire porter &ur de& relation&
de la ,a&e.
G titre d%e-emple/ nou& d"finiron& la #ue B:*S 9 B=>$=:S &ur la ,a&e de donn"e&
2$B=S;A;<*3 par une 'ue&tion e-prim"e en al,re relationnelle comme &uit!
):$A;$ ><$a B:*S B=>$=:S73*5/ P:$3*58 O
P:*A$); 73*5/ P:$3*5/
:$S;:<); 7K=A3;<;$L 100/
A*<3 7B=>$=:S/ AB=S888
)ette #ue contient donc #irtuellement le nom et le pr"nom de tou& le& ,u#eur& 'ui ont
commi& un a,u& en 'uantit" &up"rieur 1 100. $lle peut 0tre interro"e comme une ta,le
normale de la ,a&e/ 1 c.are du &6&tme de tran&former le& 'ue&tion& &ur la #ue en
'ue&tion& &ur le& ta,le& B=>$=:S et AB=S.
Notion -'.@ -ue +-ieO,
Relation non matrialise dun schma externe5 calcule partir des relations de
la ,ase par une 'uestion#
Le modle relationnel 234433386.doc
@' CONCL*SION
2an& ce c.apitre/ nou& a#on& introduit& le& concept& e&&entiel&
au4ourd%.ui &upport"& par le modle relationnel dan& le& rand&
&6&tme& indu&triel& tel& 'ue *:A)L$/ <3B:$S/ 2B2/ SDBAS$/
etc. )e& concept& &ont la ,a&e du lanae SKL/ le lanae de&
&6&tme& relationnel&.
Le modle relationnel fait au4ourd%.ui autorit" dan& l%indu&trie. <l e&t
i&&u de la t."orie de& relation& et e&t au d"part une remar'ua,le
con&truction de la rec.erc.e. <l a &u prore&&i#ement int"rer de&
concept& de plu& en plu& ric.e&/ tel& 'ue int"rit" r"f"rentielle/
r"fle-e/ etc. Le modle en e&t au4ourd%.ui 1 int"rer le& concept&
d%o,4et& comple-e&. <l a encore un ,el a#enir de#ant lui/ ,ien 'ue
parfoi& conte&t" par le& tenant& de l%orient" o,4et&.
$i%ure ;# 1-& Exemple de pro2ection

Vous aimerez peut-être aussi