A maior rede de estudos do Brasil

Grátis
3 pág.
09MAD_doc02

Pré-visualização | Página 1 de 1

Exemplo 1: 
Considere o seguinte esquema: 
 
 Estud (SID, nome, idade, CR) 
 Curso (CID, titulo) 
 Matr (SID, CID) 
 
Onde: 
SID = ID do estudante 
CID = ID do curso 
 
SID dos estudantes que estão matriculados em pelo menos 2 cursos 
r1 ← SELECIONE Matric com SID=SID1 e CID = CID1 
r2 ← SELECIONE Matric com SID=SID2 e CID = CID2 
r3 ← JUNTE r1 a r2 com r1.SID = r2.SID e r1.CID ≠ r2.CID 
r4 ← PROJETE r3 sobre SID 
 
Exemplo 2: Operações Básicas 
Considere o esquema relacional abaixo que representa um banco de dados de um banco comercial: 
 
Esquema Relacional 
 
agência ( nome_agência, cidade_agência, fundos ) 
cliente ( nome_cliente, rua_cliente, cidade_cliente ) 
conta ( número_conta, saldo, nome_agência
*
) 
empréstimo (num_empréstimo, total, nome_agência
*
) 
depositante ( nome_cliente num_empréstimo
 *
, número_conta
*
 ) 
devedor ( nome_cliente
*
, num_empréstimo
*
 ) 
 
Legenda 
 Chave Primária 
 Chave Estrangeira* 
 
 
 
a) Liste os nomes de todos os clientes do banco que tenham uma conta, um empréstimo ou ambos. 
 
Πnome_cliente (depositante) ∪ Πnome_cliente (devedor) 
 
b) Liste todos os clientes que possuem contas, mas não possuem empréstimos. 
 
Πnom_cliente (depositante) - Πnom_cliente (devedor) 
 
 
c) Liste todos os números de empréstimos e totais de empréstimos. 
 
Πnum_empréstimo, total (empréstimo) 
 
 
d) Liste os clientes que moram em Brasília. 
 
Πnome_cliente (σ cidade_cliente=“Brasília” (cliente)) 
 
 
e) Quais as tuplas da relação empréstimo cuja agência é Cinelândia? 
 
 
nome_agência num_empréstimo total 
Cinelândia BR-998 R$1.250,00 
Cinelândia BR-795 R$1.500,00 
 
 
σ nome_agência = “Cinelândia” (empréstimo) 
 
 
f) Quais as tuplas cujos totais são superiores a R$1.200,00? 
 
 
 
σ total > 1.200 (empréstimo) 
 
 
g) Quais as tuplas que contenham empréstimos maiores que 1.200 feitos na agência Cinelândia? 
 
σ total > 1.200 ∧ nome_agência=“ Cinelândia”(empréstimo) 
 
h) Liste os nomes de todos os clientes que tenham empréstimo na agência Cinelândia. 
 
 
Πnome_cliente 
 (σ devedor.num_empréstimo = empréstimo.num_empréstimo 
 (σ nome_agência = “Cinelândia” (devedor x empréstimo))) 
 
 
nome_cliente 
Luiz 
Paulo 
 
i) Liste os nomes de todos os clientes que moram na mesma rua e na mesma cidade que Paulo. 
 
R1 ←Πrua_cliente, cidade_cliente (σ nome_cliente=“Paulo” (cliente)) 
R2 ← σcliente.rua_cliente = R1.rua ∧ cliente.cidade_cliente=R1.cidade_cliente(cliente X R1) 
R3 ←Πcliente.nome_cliente (R2) 
 
nome_cliente 
Paulo 
Carla

Crie agora seu perfil grátis para visualizar sem restrições.