Banco de Dados
--Cada pedido possui em média 10 produtos com uma quantidade e preço unitário
--Cada produto faz parte em média de 5 pedidos
--Sabe-se que:
--O produto possui: código único (auto incremento) e nome
--O pedido possui: código único (auto incremento) e data de emissão
--Resolva:
--1- Defina as tabelas e relacionamentos na linguagem SQL.
CREATE TABLE Produto (
Cod_produto Integer PRIMARY KEY identity ,
Nome varchar(50)
)
CREATE TABLE Pedido (
Cod_pedido Integer PRIMARY KEY identity,
Data Date
)
CREATE TABLE ProdutoPedido (
Cod_pedido Integer,
Cod_produto Integer,
Preco float,
Quantidade integer,
FOREIGN KEY(Cod_pedido) REFERENCES Pedido (Cod_pedido),
FOREIGN KEY(Cod_produto) REFERENCES Produto (Cod_produto)
)
--2- Consulte código, nome dos produtos ordenados por nome, código.
SELECT Cod_produto, nome from Produto ORDER BY Nome,Cod_produto;
--3- Selecione os códigos em ordem decrescente, as datas de emissão dos pedidos efetuados no mês de junho
SELECT COD_PEDIDO FROM Pedido WHERE MONTH(data) = 6 ORDER BY Cod_pedido desc
--4- selecione os códigos dos produtos em ordem crescente e o total da soma da quantidade comprada no mês de junho
SELECT ProdutoPedido.COD_PRODUTO , SUM(ProdutoPedido.Quantidade)
FROM ProdutoPedido, Pedido
WHERE ProdutoPedido.Cod_pedido = pedido.Cod_pedido AND MONTH(pedido.DATA) = 6 group by ProdutoPedido.COD_PRODUTO
ORDER BY COD_PRODUTO
--5- selecione o código do pedido em ordem decrescente e o total gasto em cada pedido nas compras do mês de junho
SELECT Pedido.Cod_pedido,SUM(ProdutoPedido.quantidade*ProdutoPedido.Preco) as resultado
FROM Pedido, ProdutoPedido
WHERE Pedido.Cod_pedido = ProdutoPedido.Cod_pedido
AND MONTH(Data) = 6
GROUP BY pedido.Cod_pedido
ORDER BY Cod_pedido DESC
--6- selecione os nomes dos produtos comprados no pedido cujo código seja 1 no mês de junho
SELECT Produto.Nome
FROM Produto,ProdutoPedido,Pedido
WHERE