Consiste em uma coleção de tabelas cada uma com um nome único, uma linha em uma tabela representa um relacionamento entre um conjunto de valores
- Não existe a noção de ordem
- Nomenclatura
Álgebra Relacional
Conjunto de operações para utilizar o modelo relacional
Seleção σ
Seleção σ
- Seleciona tuplas ex: σ nome=José (aluno)
- Ex: πrg (Alunos)
- O resultado será uma nova relação
πcurso(σsemestre=1(Turmas))
Interseção
Utilizando duas relações produz uma terceira relação apenas com as tuplas comum entre ambas
Ex. Codigos de todos os clientes que possuem contas e tambem que realizaram emprestimos
Resultado em uma terceira relação apartir de duas realações , resultado apenas nas tuplas que aparecem na primeira relação e nao aparecem na segunda relação
Ex Codigos de clientes que não fizeram emprestimos
Concatenação de tuplas
Todas as tuplas da primeira relação com as tuplas da segunda relação
Simbolo X
Ex Encontre o nome dos clientes e o numero de suas respectivas contas bancarias que possuem saldo maior que 450
R1=πcod_cliente (σsaldo<400(conta)) ∩ πcod_cliente (σvalor>1000 (emprestimo))
Exercícios de (Notas de aula - BD Prof. Darlon Vasata)
Os códigos dos clientes que possuem saldo maior que 400
πcod_cliente(σsaldo>400(conta))
Os códigos dos clientes que possuem saldo maior que 500 na agencia de codigos "ag2"
πcod_cliente(σsaldo>500 ^ σcod_agencia="ag2"(conta))
Nomes de todos os gerentes
¶gerente(agencia)
Nomes dos gerentes e suas agencias
¶gerente,cod_agencia(agencia)
Uniao
Adição de tuplas a uma relação, para produzir uma terceira relação
Exemplo:
Os codigos de todos os clientes uqe possuem contas ou que fizeram emprestimos na agencia "ag3"
πcod_clienteσcod_agencia="ag3"(conta) U πcod_clienteσcod_agencia="ag3"(emprestimo)
Interseção
Utilizando duas relações produz uma terceira relação apenas com as tuplas comum entre ambas
Ex. Codigos de todos os clientes que possuem contas e tambem que realizaram emprestimos
πcod_cliente(conta) ∩ πcod_clente(emprestimo)
DiferençaResultado em uma terceira relação apartir de duas realações , resultado apenas nas tuplas que aparecem na primeira relação e nao aparecem na segunda relação
Ex Codigos de clientes que não fizeram emprestimos
πcod_clente(conta) - πcod_clente(emprestimo)
Produto CartesianoConcatenação de tuplas
Todas as tuplas da primeira relação com as tuplas da segunda relação
Simbolo X
Ex Encontre o nome dos clientes e o numero de suas respectivas contas bancarias que possuem saldo maior que 450
πnome_cliente,numero_conta(σconta.cod_cliente,cliente.cod_cliente (σsaldo>450(conta) x πcod_clente,nome_cleinte(cliente)))
ou
Exercicios ou
R1= (πcod_cliente,numero_conta (σsaldo>450(conta))
R2= (πcod_cliente,nome_cliente(cliente))
R3= (R1 X R2)
R4= (R1.cod_cliente = R2.cod_cliente(R3))
1 - Liste os codigos dos clientes que possuem saldo maior que 450 ou realizaram emprestimos de valor menor que 1000.
πcod_cliente (σsaldo>450(conta)) U πcod_cliente (σvalor<1000 (emprestimo))
2 - Liste os codigos dos clientes que possuem saldo menor que 400 ou realizaram emprestimos de valor maior que 1000.
πcod_cliente (σsaldo<400(conta)) ∩ πcod_cliente (σvalor>1000 (emprestimo))
3 - Liste os nomes dos clientes dos exercios 1 e 2
R1=πcod_cliente (σsaldo>450) U πcod_cliente (σvalor<1000 (emprestimo))
R2= πcod_cliente,nome_cliente (cliente)
R1XR2
R3=R1XR2
πnome_cliente(σR1.cod_cliente=R2.cod_cliente (R3))
R2= πcod_cliente,nome_cliente (cliente)
R1XR2
R3=R1XR2
πnome_cliente(σR1.cod_cliente=R2.cod_cliente (R3))
4 - Liste os nomes do todos os clientes que possuem conta na agencia "ag2"
R1=πcod_cliente (σcod_agencia=ag2(conta))
R2=πcod_cliente,nome_cliente(cliente)
R3=R1XR2
πnome_cliente(σR1.cod_cliente=R2.cod_cliente (R3))
5 - Liste os nomes de todos os clientes que realizaram emprestimos
6 - Liste os nomes de todos os clientes que possuem conta com saldo maior ou igual a 400
7 - Liste os nomes de todos os clientes que possuem conta nas agencias da cidade de São Paulo
Nenhum comentário:
Postar um comentário