TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

Exercicio html

Por:   •  18/2/2016  •  Trabalho acadêmico  •  558 Palavras (3 Páginas)  •  324 Visualizações

Página 1 de 3

--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

...

Baixar como (para membros premium)  txt (4.8 Kb)   pdf (63.2 Kb)   docx (11.3 Kb)  
Continuar por mais 2 páginas »
Disponível apenas no TrabalhosGratuitos.com