Beruflich Dokumente
Kultur Dokumente
Conjunto de operaes que usa uma ou duas relaes como entrada e gera uma relao de sada
operao (REL1) REL2 operao (REL1,REL2) REL3
Operaes bsicas:
seleo projeo unio diferena produto cartesiano
Nome
Joo Maria Jos
Registro
1 2 3
Registro
2 3
Nome
Maria
Registro
2
Registro
1 2 3
UNIO
Nome
Joo Maria Jos Paulo Carlos
EMPRSTIMO
Nome
Paulo Maria Carlos
Emprstimo
100 200 300
Diferena:
tuplas que se encontram em uma relao, mas no em outra (ex: todos clientes sem emprstimo)
Nome
Joo Maria Jos 1 2 3
Conta
Nome
Emprstimo
100 200 300
= Nome
Joo Jos
DIFERENA
Conta
Nomeemp
Maria Maria Maria
Emprstimo
200 200 200
CONTACORRENTE
Nome
Joo Maria Jos 1 2 3
EMPRSTIMO
Nome
Paulo Maria Carlos
Conta
Emprstimo
100 200 300
INTERS.
Nome
Maria
Operadores derivados
juno: inclui um produto cartesiano, seguido de uma seleo (pode ter projeo ao final) (nomes dos clientes com conta corrente e nmero de emprstimo)
prod. cartesiano: CONTACORRENTE X EMPRSTIMO
seleo: Nomecontacorrente = Nomeemprstimo projeo: Nomecontacorrente, Emprstimoemprstimo
nomes dos atributos nas relaes da seleo so iguais Juno externa (outer join): evita perda de informao
( nome,endereo,cidade ) { Coyote,Toon,Hollywood } { Coelho,Tnel,Cenoura } { Smith,Revolver,Vale Morte} (nome,banco,salrio) { Coyote,Mesa,1500 } { Coelho,Mesa,1300 } { Gates, Msm, 5300 }
Juno: (nome,endereo,cidade,banco,salrio) { Coyote, Toon, Hollywood, Mesa, 1500 } { Coelho, Tnel, Cenoura, Mesa, 1300 }
lgebra Relacional
Funes de agregao
retorna um valor nico de resultado a partir de uma coleo de valores sum: soma dos valores { sum salrio (inpe) } avg: mdia dos valores count: total de tens na coleo min e max: mnimo e mximo valores da coleo count-distinct: elimina duplicao primeiro e conta o total
SELECT: corresponde ao operador projeo da lgebra relacional FROM: corresponde ao operador produto cartesiano da lgebra relacional WHERE: corresponde ao operador seleo da lgebra relacional
Exemplos de Consultas
ALUNO
Nome
Joo Maria Jos 1 2 3
CADEIRA
Id
Aluno
1 2 10
Tipo
escolar normal poltrona
Id
Tipo
escolar normal
select * from emprestimo inner join cliente on emprestimo.numero = cliente.emp_numero { Centro, L-170, 3000, Joo, L-170} { Satelite, L-230, 4000, Sandra, L-230 }
select * from emprestimo left outer join cliente on emprestimo.numero = cliente.emp_numero { Centro, L-170, 3000, Joo, L-170} { Satelite, L-230, 4000, Sandra, L-230 } { Inpe, L-260, 1700, null, null, }
Passos na Modelagem de BD
Requisitos:
identificao dos dados
Modelagem conceitual:
mapear viso do usurio em um conjunto de dados descreve entidades, atributos e relacionamentos
Implementao:
esquema de banco de dados
Projeto fsico:
estruturas de dados, mtodos de acesso, segurana
Projeto Fsico