Exercicio html
Por: Daniel54 • 18/2/2016 • Trabalho acadêmico • 558 Palavras (3 Páginas) • 318 Visualizações
--1
CREATE TABLE vendedor (
codigo INTEGER PRIMARY KEY,
nome VARCHAR(30) NOT NULL
);
--2
CREATE TABLE produto (
codigo INTEGER PRIMARY KEY,
descricao VARCHAR(30) NOT NULL,
preco NUMERIC (8,2) NOT NULL
);
--3
CREATE TABLE pedido (
nro_pedido INTEGER PRIMARY KEY,
data_pedido DATE NOT NULL,
cod_vendedor INTEGER REFERENCES vendedor
);
--4
CREATE TABLE pedido_produto (
pedido_prod INTEGER REFERENCES pedido ON DELETE CASCADE,
produto_prod INTEGER REFERENCES produto,
quantidade INTEGER NOT NULL, CHECK (quantidade > 0),
valor_total NUMERIC (8,2) NOT NULL
);
--5
INSERT INTO vendedor VALUES (1,'Joao');
INSERT INTO vendedor VALUES (2,'Pedro');
INSERT INTO vendedor VALUES (3,'Paulo');
INSERT INTO produto VALUES (1,'Refrigerante', 10);
INSERT INTO produto VALUES (2,'Agua Mineral', 5);
INSERT INTO produto VALUES (3,'Suco Natural', 3);
INSERT INTO produto VALUES (4,'Suco em Po', 1);
INSERT INTO pedido VALUES (1,'20150412',1);
INSERT INTO pedido VALUES (2,'20150413',2);
INSERT INTO pedido VALUES (3,'20150413',3);
INSERT INTO pedido VALUES (4,'20150414',1);
INSERT INTO pedido VALUES (5,'20150415',1);
INSERT INTO pedido VALUES (6,'20150415',2);
INSERT INTO pedido_produto VALUES (1,1,10,100);
INSERT INTO pedido_produto VALUES (1,2,5,25);
INSERT INTO pedido_produto VALUES (1,3,10,30);
INSERT INTO pedido_produto VALUES (2,1,10,100);
INSERT INTO pedido_produto VALUES (2,3,10,30);
INSERT INTO pedido_produto VALUES (2,4,10,10);
INSERT INTO pedido_produto VALUES (3,1,20,200);
INSERT INTO pedido_produto VALUES (3,2,10,50);
INSERT INTO pedido_produto VALUES (3,3,10,30);
INSERT INTO pedido_produto VALUES (3,4,20,20);
INSERT INTO pedido_produto VALUES (4,1,5,50);
--6 Crie uma coluna chamada comissao (numeric 8,2) na tabela pedido.
ALTER TABLE pedido ADD COLUMN comissao NUMERIC(8,2);
--7Atualize a coluna criada acima no valor de 5% do total de vendas de cada
-- pedido baseado nas linhas da tabela pedido_produto.
UPDATE pedido SET comissao = (SELECT SUM(valor_total) FROM pedido_produto WHERE pedido_prod = 1) * 0.05 WHERE nro_pedido = 1;
UPDATE pedido SET comissao = (SELECT SUM(valor_total) FROM pedido_produto WHERE pedido_prod = 2) * 0.05 WHERE nro_pedido = 2;
UPDATE pedido SET comissao = (SELECT SUM(valor_total) FROM pedido_produto WHERE pedido_prod = 3) * 0.05 WHERE nro_pedido = 3;
UPDATE pedido SET comissao = (SELECT SUM(valor_total) FROM pedido_produto WHERE pedido_prod = 4) * 0.05 WHERE nro_pedido = 4;
--8 Liste o total de vendas de cada vendedor.
SELECT vendedor.nome, SUM(valor_total)
FROM vendedor, pedido_produto, pedido
WHERE pedido.cod_vendedor = vendedor.codigo
AND pedido.nro_pedido = pedido_prod
GROUP BY vendedor.nome;
--9 Liste os dados do pedido com a maior venda. (Nro do pedido, nome do
--produto e quantidade)
SELECT p.nro_pedido, SUM(pp.valor_total) AS Total
FROM pedido_produto pp, pedido p
WHERE p.nro_pedido
...