16 Divisão (cont a opração d divisão é útil para qustõs como: Obtr TODOS os noms dos mprgados qu trabalham m TODOS os projctos nos quais Joao trabalha projctos m qu Joao trabalha projctos EBIs d mprgados Aplicar a divisão d PNEBI por PNJ: ' ( * 15
' * * Equi-Junção Junção-natural (ou junção-* Equi-Junção - opração d junção- m qu apnas o oprador = aparc nas comparaçõs Como rsultado das qui-junçõs aparcm smpr um par d atributos com valors idênticos (qu são os atributos nvolvidos na comparação Ex: DirDp Dnom Dnum DirBI DirData Pnom Unom EBI Vndas 5 5769834 1998-10-10 Joao Estvs 5769834 Junção-* é basicamnt uma qui-junção sguida da rmoção d um dos atributos m duplicado Os atributos d junção têm d tr o msmo nom plo qu pod sr ncssário fazr rnomação d atributos Dnum é o atributo d junção 13 Divisão O conjunto d opraçõs da álgbra rlacional é um conjunto complto i qualqur das outras opraçõs pod sr xprssa como uma squência d opraçõs dst conjunto para qu um tuplo no rsultado é ncssário qu os valors d R aparçam combinados com cada tuplo d S R A B a1 b1 a2 b1 a1 b2 a3 b2 a1 b3 a2 b3 a4 b4 S A a1 a2 B b1 b3 A opração opraçõs Sja ntão: pod sr xprssa a partir das tq 14
Junção- : xmplo Qustão1: Obtr o 1o último nom dos mprgados qu trabalham no dpartamnto d Vndas S soubrmos o númro do dpartamnto Vndas podmos slcionar da rlação Emprgados aquls qu trabalham num dpartamnto com ss númro informação complta do dpartamnto Vndas mprgados do dpartamnto Vndas Qustão2: Obtr o nom do Dirctor d cada Dpartamnto Combinar tuplos d Dpartamnto com tuplos d Emprgado m qu EBI sja igual a DirBI 12 Junção- prmit-nos combinar tuplos d duas rlaçõs qu obdcm a uma condição d junção (quival a: produto cartsiano slcção quivalnt a condição nvolvndo atributos d atributos d Daqui a dsignação d opração junção- é uma rlação com atributos m qu os são atributos d os são atributos d tm um tuplo para cada combinação d tuplos com tuplos d qu satisfaz a condição d junção opração muito important m BDs pois prmit lidar com os rlacionamntos ntr rlaçõs 11
Produto Cartsiano prmit-nos combinar tuplos d rlaçõs difrnts sja ntão é uma rlação com ond xist um tuplo para cada combinação possívl d tuplos atributos com tuplos d ( ' * Exmplos com opradors sobr conjuntos R A B C S D E F b g a A B C b g a A B C A B C Qustão: Obtr o númro d EBI d todos os mprgados qu ou trbalham no dpartamnto 5 ou qu suprvisionam um mprgado qu trabalha no dpartamnto 5 todos mprgados do dpartamnto 5 atributo EBI d mprgados do dpartamnto 5 suprvisors d mprgados do dpartamnto 5 9 o númro d tuplos d d tuplos d é m qu é o númro d tuplos d é o númro R A B C S D E F b g a A B C D E F b g a b g a b g a 10
Runião Intrscção Difrnça Condição d compatibilidad para a runião Duas rlaçõs dizm-s compatívis para a runião s tivrm o msmo grau s para (i têm d tr o msmo tipo d tuplos é a rlação qu inclui todos os tuplos qu stão m R ou m S ou m ambos Os tuplos m duplicado são liminados é a rlação qu inclui todos os tuplos qu stão m ambos R S é a rlação qu inclui todos os tuplos qu stão m R mas não m S Notar qu são comutativas associativas mas a opração não 8 Rnomação d atributos ( produz uma rlação idêntica a mas dsignada com atributos por ordm Exmplo: ' ( R PN UN S João Santos 180 Inês Prira 120 Rui Mndonça 90 Ana Fio 140 Pdro Monts 95 Por vzs é ncssário aplicar sucssivas opraçõs criar rsultados intrmédios sobr os quais aplicamos as opraçõs rstants Exmplo: pod sr r-scrito como: 7
Projcção prmit-nos obtr uma nova rlação com apnas alguns atributos da rlação original (slccionam-s as colunas qu ficam ond é uma lista d atributos d tm apnas os atributos dfinidos m tuplos rptidos são liminados Pod acontcr s não contivr a chav d 5 Projcção: xmplo Qustão: Obtnha uma listagm d todos mprgados indicando primiro último nom salário Pnom Unom Salario João Santos 180 Inês Prira 120 Rui Mndonça 90 Ana Fio 140 Pdro Monts 95 Mais xmplos: R A B C a d c A B C A C a c d f c d sm tuplos rptidos 6
( ( ' Slcção Prmit slccionar um sub-conjunto d tuplos d uma rlação qu satisfazm uma dtrminada condição sobr alguns atributos ond é uma condição nvolvndo os atributos d a rlação rsultant tm os msmos atributos qu a rlação original ou m qu é um oprador d comparação a condição pod sr composta d várias clausulas ligadas por AND OR ou NOT é um oprador unário i só pod sr aplicado a uma rlação é comutativo 3 Slcção: xmplos Considr-s a rlação Emprgado: Pnom Unom EBI Salario SuprBI Ndp João Santos 7652348 180 3897634 4 Inês Prira 6788432 120 1297843 5 Rui Mndonça 6923665 90 6632436 6 Ana Fio 4563278 140 7652348 4 Pdro Monts 3657423 95 1297843 5 Qustão: Dtrmin os mprgados qu trabalham no dpartamnto 4 ou cujo salário é maior do qu 100 contos A tabla rsultado sria: Pnom Unom EBI Salario SuprBI Ndp João Santos 7652348 180 3897634 4 Inês Prira 6788432 120 1297843 5 Ana Fio 4563278 140 7652348 4 4
Estrutura d uma BDs rlacional Uma BDs rlacional é um conjunto d rlaçõs A strutura d uma rlação é dfinida plo su squma Uma rlação pod sr vista como uma tabla d valors m qu cada coluna rprsnta um atributo da rlação cada linha é um tuplo d valors rlacionados Notação: O squma d uma rlação com atributos Um tuplo d uma rlação scrv-s como é o valor do atributo rprsnta o atributo da rlação domínio d dfin o conjunto d valors qu Dfinimos a strutura dos dados mas como manipulá-los? scrv-s como: pod tomar ond 1 Álgbra Rlacional Conjunto d opraçõs qu nos prmitm manipular rlaçõs Podmos dividi-las m dois grupos: opraçõs sobr conjuntos: runião intrscção difrnça produto cartsiano opraçõs spcíficas d BDs: slcção slcciona linhas d uma rlação projcção slcciona colunas d uma rlação junção prmit juntar rlaçõs 2