Você está na página 1de 5

SCRIPTS PARA A LIMPEZA DAS ESTRUTURAS

DROP TABLE PEDIDO;


DROP TABLE CLIENTE;
DROP TABLE VENDEDOR;
DROP TABLE PRAZO;
DROP TABLE PRODUTO;

/* SCRIPTS PARA A CRIAÇÃO DO BD PARA A P3.*/

CREATE TABLE CLIENTE(


CODCLIENTE INTEGER NOT NULL PRIMARY KEY,
NOMECLIENTE VARCHAR(50));
COMMIT;

CREATE TABLE PRODUTO(


CODPRODUTO INTEGER NOT NULL PRIMARY KEY,
NOMEPRODUTO VARCHAR(50));
COMMIT;

CREATE TABLE VENDEDOR(


CODVENDEDOR INTEGER NOT NULL PRIMARY KEY,
NOMEVENDEDOR VARCHAR(50));
COMMIT;

CREATE TABLE PRAZO(


CODPRAZO INTEGER NOT NULL PRIMARY KEY,
DESCRICAOPRAZO VARCHAR(50));
COMMIT;

CREATE TABLE PEDIDO(


CODPEDIDO INTEGER NOT NULL PRIMARY KEY,
DATA DATE,
VALOR NUMERIC(8,2),
REFVEND INTEGER NOT NULL,
REFCLI INTEGER NOT NULL,
REFPRAZO INTEGER NOT NULL,
REFPROD INTEGER NOT NULL);
COMMIT;

ALTER TABLE PEDIDO


ADD FOREIGN KEY(REFCLI) REFERENCES CLIENTE(CODCLIENTE);
COMMIT;

ALTER TABLE PEDIDO


ADD FOREIGN KEY(REFPROD) REFERENCES PRODUTO(CODPRODUTO);
COMMIT;

ALTER TABLE PEDIDO


ADD FOREIGN KEY(REFVEND) REFERENCES VENDEDOR(CODVENDEDOR);
COMMIT;

ALTER TABLE PEDIDO


ADD FOREIGN KEY(REFPRAZO) REFERENCES PRAZO(CODPRAZO);
COMMIT;
/* LIMPEZA PREVENTIVA*/

DELETE FROM CLIENTE;


DELETE FROM VENDEDOR;
DELETE FROM PRAZO;
DELETE FROM PRODUTO;
DELETE FROM PEDIDO;

/* INSERÇÕES*/

INSERT INTO CLIENTE VALUES (1,'LUIZ FELIPE VIVENA');


INSERT INTO CLIENTE VALUES (2,'ELIZABETH PRINCESS SILVENESS');
INSERT INTO CLIENTE VALUES (3,'BOLSEIRO NORARIO');
INSERT INTO CLIENTE VALUES (4,'DILEMAR DAS GEMAS');
INSERT INTO CLIENTE VALUES (5,'BRAULIO FUGGLE');
INSERT INTO CLIENTE VALUES (6,'BILBO BAGGINS DE RINGS');
INSERT INTO CLIENTE VALUES (7,'DUMBLEDORE SALVEZNOS');
INSERT INTO CLIENTE VALUES (8,'RENATO DAS LEGIONES RUSSAS');
INSERT INTO CLIENTE VALUES (9,'GADELHA DA FATIMA');
INSERT INTO CLIENTE VALUES (10,'JOJO RAIZA FEIRÚCIA');
INSERT INTO CLIENTE VALUES (11,'ANITA DECADENCIUS MUSICALES');
INSERT INTO CLIENTE VALUES (12,'PAULA DESCABIDOS SHALLOWS');
INSERT INTO CLIENTE VALUES (13,'JESUS SALVENOS DOS FUNKSTEINS');
INSERT INTO CLIENTE VALUES (14,'MAURICIO JOVENOLIS');
INSERT INTO CLIENTE VALUES (15,'CHARMING PRINCE EUGENIUS');
INSERT INTO CLIENTE VALUES (16,'SNOW WHITE TESTING');

COMMIT;

INSERT INTO VENDEDOR VALUES (1,'SERGIO DE LOS BRANCOS');


INSERT INTO VENDEDOR VALUES (2,'LATICIA LA LAMA');
INSERT INTO VENDEDOR VALUES (3,'FACA NA BOTA');
INSERT INTO VENDEDOR VALUES (4,'SNOOPY DOG');
INSERT INTO VENDEDOR VALUES (5,'CABRAL COSTA');
INSERT INTO VENDEDOR VALUES (6,'JEREMIAS DA ROCKONHA');
INSERT INTO VENDEDOR VALUES (7,'VAMPIRINA MOTOR ROSA');
INSERT INTO VENDEDOR VALUES (8,'LARA PESCOÇO');
INSERT INTO VENDEDOR VALUES (9,'JUREMA DINDINDA');
INSERT INTO VENDEDOR VALUES (10,'ELAINE POULKAI');
COMMIT;

INSERT INTO PRAZO VALUES (1,'A VISTA');


INSERT INTO PRAZO VALUES (2,'30 DIAS');
INSERT INTO PRAZO VALUES (3,'60 DIAS');
INSERT INTO PRAZO VALUES (4,'PERDER DE VISTA');
COMMIT;

INSERT INTO PRODUTO VALUES (1,'MASCOTINHA');


INSERT INTO PRODUTO VALUES (2,'ENTREVEIRO');
INSERT INTO PRODUTO VALUES (3,'ENRROSCO');
INSERT INTO PRODUTO VALUES (4,'VASSOURA DE SOGRA');
INSERT INTO PRODUTO VALUES (5,'SONHO DE VALSA');
INSERT INTO PRODUTO VALUES (6,'LEPO LEPO');
INSERT INTO PRODUTO VALUES (7,'EXTASE');
INSERT INTO PRODUTO VALUES (8,'SACODE');
INSERT INTO PRODUTO VALUES (9,'BAILARINA');
INSERT INTO PRODUTO VALUES (10,'CASADINHOS');
INSERT INTO PRODUTO VALUES (11,'CONCHINHA');
INSERT INTO PRODUTO VALUES (12,'VUCO VUCO AVESSO');
INSERT INTO PRODUTO VALUES (13,'LASQUEIRA DE CHOCOLATE');
COMMIT;

INSERT INTO PEDIDO VALUES (1,'10/10/2022',55.00,1,1,1,1);


INSERT INTO PEDIDO VALUES (2,'10/10/2022',93.00,2,1,1,1);
INSERT INTO PEDIDO VALUES (3,'10/10/2022',40.00,1,4,2,1);
INSERT INTO PEDIDO VALUES (4,'10/10/2022',60.80,3,2,1,2);
INSERT INTO PEDIDO VALUES (5,'10/10/2022',53.50,1,4,4,1);
INSERT INTO PEDIDO VALUES (6,'10/10/2022',22.00,4,4,4,2);
INSERT INTO PEDIDO VALUES (7,'10/10/2022',85.47,1,2,1,1);
INSERT INTO PEDIDO VALUES (8,'11/10/2022',34.00,5,5,1,2);
INSERT INTO PEDIDO VALUES (9,'11/10/2022',56.00,1,4,1,1);
INSERT INTO PEDIDO VALUES (10,'11/10/2022',55.10,2,2,1,3);
INSERT INTO PEDIDO VALUES (11,'11/10/2022',74.30,1,1,1,3);
INSERT INTO PEDIDO VALUES (12,'11/10/2022',73.50,3,2,2,3);
INSERT INTO PEDIDO VALUES (13,'12/10/2022',37.30,1,3,1,6);
INSERT INTO PEDIDO VALUES (14,'12/10/2022',73.40,4,4,1,1);
INSERT INTO PEDIDO VALUES (15,'12/10/2022',85.00,1,4,4,7);
INSERT INTO PEDIDO VALUES (16,'12/10/2022',54.20,5,4,1,8);
INSERT INTO PEDIDO VALUES (17,'12/10/2022',73.60,1,1,1,1);
INSERT INTO PEDIDO VALUES (18,'12/10/2022',42.70,2,5,4,2);
INSERT INTO PEDIDO VALUES (19,'12/10/2022',67.90,3,5,1,2);
INSERT INTO PEDIDO VALUES (20,'12/10/2022',27.20,4,4,1,1);
INSERT INTO PEDIDO VALUES (21,'12/10/2022',110.20,4,6,1,9);
INSERT INTO PEDIDO VALUES (22,'12/10/2022',53.20, 5,10,2,5);
INSERT INTO PEDIDO VALUES (23,'13/10/2022',235.50,2,9,1,6);
INSERT INTO PEDIDO VALUES (24,'13/10/2022',480.15,1,8,1,4);
INSERT INTO PEDIDO VALUES (25,'13/10/2022',89.80, 3,7,1,3);
INSERT INTO PEDIDO VALUES (26,'13/10/2022',333.50,3,7,1,3);
INSERT INTO PEDIDO VALUES (27,'13/10/2022',150.45,6,7,1,3);
INSERT INTO PEDIDO VALUES (28,'13/10/2022',127.30,2,7,1,3);
INSERT INTO PEDIDO VALUES (29,'14/10/2022',427.25,2,7,1,10);
INSERT INTO PEDIDO VALUES (30,'14/10/2022',827.20,2,7,1,10);
INSERT INTO PEDIDO VALUES (31,'14/10/2022',327.45,2,7,1,10);
INSERT INTO PEDIDO VALUES (32,'14/10/2022',227.13,3,7,1,10);
INSERT INTO PEDIDO VALUES (33,'14/10/2022',521.20,3,8,1,6);
INSERT INTO PEDIDO VALUES (34,'14/10/2022',727.15,3,9,1,6);
INSERT INTO PEDIDO VALUES (35,'14/10/2022',270.95,3,9,1,7);
INSERT INTO PEDIDO VALUES (36,'15/10/2022',333.50,3,7,1,3);
INSERT INTO PEDIDO VALUES (37,'15/10/2022',150.45,6,7,1,3);
INSERT INTO PEDIDO VALUES (38,'15/10/2022',127.30,2,7,1,3);
INSERT INTO PEDIDO VALUES (39,'15/10/2022',427.25,2,7,1,10);
INSERT INTO PEDIDO VALUES (40,'15/10/2022',827.20,2,7,1,10);
INSERT INTO PEDIDO VALUES (41,'15/10/2022',110.20,4,6,1,9);
INSERT INTO PEDIDO VALUES (42,'16/10/2022',53.20, 5,10,2,5);
INSERT INTO PEDIDO VALUES (43,'16/10/2022',235.50,2,9,1,6);
INSERT INTO PEDIDO VALUES (44,'16/10/2022',480.15,1,8,1,4);
INSERT INTO PEDIDO VALUES (45,'16/10/2022',89.80, 3,7,1,3);
INSERT INTO PEDIDO VALUES (46,'16/10/2022',333.50,3,7,1,3);
INSERT INTO PEDIDO VALUES (47,'16/10/2022',150.45,6,7,1,3);
INSERT INTO PEDIDO VALUES (48,'16/10/2022',127.30,2,7,1,3);
INSERT INTO PEDIDO VALUES (49,'16/10/2022',427.25,2,7,1,3);
INSERT INTO PEDIDO VALUES (50,'16/10/2022',827.20,2,7,1,10);
INSERT INTO PEDIDO VALUES (51,'16/10/2022',55.50,7,11,1,3);
INSERT INTO PEDIDO VALUES (52,'12/10/2022',180.45,7,7,1,3);
INSERT INTO PEDIDO VALUES (53,'12/10/2022',138.30,8,12,1,3);
INSERT INTO PEDIDO VALUES (54,'12/10/2022',400.00,9,13,1,11);
INSERT INTO PEDIDO VALUES (55,'12/10/2022',527.50,7,7,1,11);
INSERT INTO PEDIDO VALUES (56,'12/10/2022',27.50,9,13,1,3);
INSERT INTO PEDIDO VALUES (57,'12/10/2022',227.50,10,14,1,12);
INSERT INTO PEDIDO VALUES (58,'12/10/2022',327.00,9,15,1,12);
INSERT INTO PEDIDO VALUES (59,'12/10/2022',127.00,9,7,1,10);
INSERT INTO PEDIDO VALUES (60,'12/10/2022',45.00,10,7,1,3);

COMMIT;

/*QUESTAO 1*/
select cliente.nomecliente, pedido.valor, vendedor.nomevendedor
from cliente, pedido, vendedor
where cliente.codcliente = pedido.refcli and pedido.refvend = vendedor.codvendedor
and pedido.data = '2022/10/12' and pedido.refvend = 1
union
select cliente.nomecliente, pedido.valor, vendedor.nomevendedor
from cliente, pedido, vendedor
where cliente.codcliente = pedido.refcli and pedido.refvend = vendedor.codvendedor
and pedido.data = '2022/10/12' and pedido.refvend = 4
union
select cliente.nomecliente, pedido.valor, vendedor.nomevendedor
from cliente, pedido, vendedor
where cliente.codcliente = pedido.refcli and pedido.refvend = vendedor.codvendedor
and pedido.data = '2022/10/12' and pedido.refvend = 6
/*FALTOU VERIFICAR SE O VENDEDOR VENDEU MAIS DE UMA VEZ PARA O MESMO CLIENTE*/

/*QUESTAO 2*/
select cliente.nomecliente, count(pedido.codpedido), sum(pedido.valor)
from cliente, pedido, prazo
where pedido.data = '2022/10/12' and cliente.codcliente = pedido.refcli and
prazo.codprazo = 1
group by cliente.nomecliente
order by count desc
/*FALTOU RENOMEAR AS COLUNAS E FAZER O MONTANTE MAIOR QUE 100*/

/*QUESTAO 3*/
select cliente.codcliente, cliente.nomecliente, count(pedido.refcli =
cliente.codcliente)
from cliente
left join pedido
on pedido.refcli = cliente.codcliente
group by cliente.codcliente, cliente.nomecliente
order by count desc

/*QUESTAO 4*/
select produto.nomeproduto, count(produto.codproduto = pedido.refprod)
from produto
left join pedido
on produto.codproduto = pedido.refprod
group by produto.nomeproduto
order by count desc
/*QUESTAO 5*/
select produto.nomeproduto, count(produto.codproduto = pedido.refprod)
from produto, pedido
where produto.codproduto = pedido.refprod and pedido.data = '2022/10/12'
group by produto.nomeproduto
union
select produto.nomeproduto, count(produto.codproduto = pedido.refprod)
from produto, pedido
where produto.codproduto = pedido.refprod and pedido.data != '2022/10/12'
group by produto.nomeproduto
order by count desc
/*FALTOU CRIAR A COLUNA 'DESCRICAO'*/

Você também pode gostar