Banco de Dados
DEPARTAMENTO DE CIÊNCIA DA COMPUTAÇÃO
INTRODUÇÃO A BANCO DE DADOS
TRABALHO PRÁTICO 1
CONSULTAS EM SQL
CHRISTIANO FONSECA DE ALMEIDA
2006016533
Primeira Parte - Consultas em SQL a partir de expressões da álgebra relacional
1. πNome, Endereco, Cidade (σ Cidade = ‘Belo Horizonte’ OR Estado = ‘SP’ (Cliente))
Consulta em SQL:
SELECT Nome, Endereco, Cidade
FROM Cliente
WHERE Cidade='Belo Horizonte' OR UF='SP'
2. π Num Pedido, Nome, Data, Valor Total (σ Valor Total > 300 (Pedido |X| Cliente))
Consulta em SQL:
SELECT Num_Pedido, Nome, Data, Valor_Total
FROM (Cliente NATURAL JOIN Pedido)
WHERE Valor_Total>300
3. π Nome (σ Cidade = ‘Belo Horizonte’ (Cliente)) U π Nome (Cliente |X| (σ Valor Total > 500 (Pedido))
Consulta em SQL:
SELECT DISTINCT Nome
FROM Cliente, Pedido
WHERE (Cliente.Cod_Cliente=Pedido.Cod_Cliente AND Valor_Total>500) OR Cidade='Belo Horizonte'
4. π Descricao, Quantidade ((σ Nome = ‘Orlando Dias’ (Cliente)) |X| (σ Valor Total > 300 (Pedido)) |X|
Item Pedido |X| Item)
Consulta em SQL:
SELECT Descricao, Quantidade
FROM Cliente NATURAL JOIN Pedido NATURAL JOIN Item_Pedido NATURAL JOIN Item
WHERE Nome='Orlando Dias' AND Valor_Total>300
5. π Deposito.Nome (σ Cliente.Nome = ‘Orlando Dias’ (Cliente |X| Cliente.Cidade = Deposito.Cidade Deposito))
Consulta em SQL:
SELECT Deposito.Nome
FROM Cliente INNER JOIN Deposito ON Cliente.Cidade=Deposito.Cidade
WHERE Cliente.Nome='Orlando Dias'
6. π Nome (σ Cidade = ‘Belo Horizonte’ (Cliente)) U π Cliente.Nome (Cliente |X| Pedido |X| Fornecimento |X| (σ Cidade = ‘Belo Horizonte’ (Deposito)))
Consulta em SQL:
SELECT DISTINCT C.Nome
FROM Cliente AS C, Pedido AS P, Fornecimento AS F, Deposito AS D
WHERE (F.Cod_Dep=D.Cod_Dep AND P.Num_Pedido=F.Num_Pedido AND C.Cod_Cliente=P.Cod_Cliente AND D.Cidade='Belo Horizonte') OR