Logo Hardware.com.br
Luiz Fernando Fagundes
Luiz Fernand... Novo Membro Registrado
2 Mensagens 0 Curtidas

Ajuda em Banco de Dados Oracle

#1 Por Luiz Fernand... 27/04/2016 - 21:54
Preciso muito desse SQL, por favor!!! Alguém me ajuda!!!
Acredito que não seja muito difícil, porém sou iniciante em banco de dados e não consigo resolver.

Este é o enunciado da questão:
"Mostre o SQL que retorna 4 colunas contendo o nome dos clientes (1ª coluna), a quantidade de locações por eles realizadas nos meses 08 (2ª coluna), 09(3ª coluna) e 10(4ª coluna). Desta forma será possível visualizar uma relação de clientes contendo a quantidade locada em cada um dos meses informados."

create table TBCLASSIFICACAO(
PKCODCLASS integer not null,
NOMECLASS varchar2(15),
VALORDIARIA number(15,2),
constraint TBCLASSIFICACAO_pk primary key (PKCODCLASS)
);

create table TBCLIENTE(
PKCODCLI integer not null,
NOMECLI varchar2(30),
ENDCLI varchar2(30),
CIDADECLI varchar2(25),
UFCLI varchar2(2),
constraint TBCLIENTE_PK primary key (PKCODCLI)
);

create table TBGENERO(
PKCODGEN integer not null,
NOMEGEN varchar2(20),
constraint TBGENERO_PK primary key (PKCODGEN)
);

create table TBFILME(
PKCODFILME integer not null,
TITULO varchar2(40),
FKCODGEN integer,
FKCODCLASS integer,
constraint TBFILME_PK primary key (PKCODFILME)
);


create table TBLOCACAO(
PKCODLOC integer not null,
DATALOC date,
FKCODCLI integer,
constraint TBLOCACAO_PK primary key (PKCODLOC)
);


create table TBRELFILMELOC(
PKCODREL integer not null,
FKCODFILME integer,
FKCODLOC integer,
constraint TBRELFILMELOC_PK primary key (PKCODREL)
);

alter table TBFILME add constraint TBFILME_FKCODGEN_FK foreign key(FKCODGEN) references TBGENERO(PKCODGEN);
alter table TBFILME add constraint TBFILME_FKCODCLASS_FK foreign key(FKCODCLASS) references TBCLASSIFICACAO(PKCODCLASS);
alter table TBLOCACAO add constraint TBLOCACAO_FKCODCLI_FK foreign key(FKCODCLI) references TBCLIENTE(PKCODCLI);
alter table TBRELFILMELOC add constraint TBRELFILMELOC_FKCODFILME_FK foreign key(FKCODFILME) references TBFILME(PKCODFILME);
alter table TBRELFILMELOC add constraint TBRELFILMELOC_FKCODLOC_FK foreign key(FKCODLOC) references TBLOCACAO(PKCODLOC);






INSERT INTO TBCLASSIFICACAO (PKCODCLASS, NOMECLASS, VALORDIARIA) VALUES (1, 'Lancamento', 9.60);
INSERT INTO TBCLASSIFICACAO (PKCODCLASS, NOMECLASS, VALORDIARIA) VALUES (2, 'Destaque', 5.22);
INSERT INTO TBCLASSIFICACAO (PKCODCLASS, NOMECLASS, VALORDIARIA) VALUES (3, 'Antigo', 2.99);
INSERT INTO TBCLASSIFICACAO (PKCODCLASS, NOMECLASS, VALORDIARIA) VALUES (4, 'Muito Antigo', 1.76);



INSERT INTO TBCLIENTE (PKCODCLI, NOMECLI, ENDCLI, CIDADECLI, UFCLI) VALUES (1, 'Emilio G. Medici', 'Rua XXX , 70', 'Porto Alegre', 'RS');
INSERT INTO TBCLIENTE (PKCODCLI, NOMECLI, ENDCLI, CIDADECLI, UFCLI) VALUES (2, 'Ernesto Geisel', 'AV yyyy, 500', 'Canoas', 'RS');
INSERT INTO TBCLIENTE (PKCODCLI, NOMECLI, ENDCLI, CIDADECLI, UFCLI) VALUES (3, 'Joao Figueiredo', 'Rua wwww, 65', 'Sapucaia', 'RS');
INSERT INTO TBCLIENTE (PKCODCLI, NOMECLI, ENDCLI, CIDADECLI, UFCLI) VALUES (4, 'Tancredo Neves', 'AV yyyy, 800', 'Porto Alegre', 'RS');
INSERT INTO TBCLIENTE (PKCODCLI, NOMECLI, ENDCLI, CIDADECLI, UFCLI) VALUES (5, 'Jose Sarney', 'AV yyyy, 739', 'Sapucaia', 'RS');
INSERT INTO TBCLIENTE (PKCODCLI, NOMECLI, ENDCLI, CIDADECLI, UFCLI) VALUES (6, 'Fernando Collor', 'Rua XXX , 120', 'Porto Alegre', 'RS');
INSERT INTO TBCLIENTE (PKCODCLI, NOMECLI, ENDCLI, CIDADECLI, UFCLI) VALUES (7, 'Itamar Franco', 'AV. qqq, 5', 'Porto Alegre', 'RS');
INSERT INTO TBCLIENTE (PKCODCLI, NOMECLI, ENDCLI, CIDADECLI, UFCLI) VALUES (8, 'Fernando Henrique Cardoso', 'Rua XXX , 90', 'Camboriu', 'SC');
INSERT INTO TBCLIENTE (PKCODCLI, NOMECLI, ENDCLI, CIDADECLI, UFCLI) VALUES (9, 'Luiz Inacio Lula da Silva', 'AV. hhhh 88', 'Camboriu', 'SC');
INSERT INTO TBCLIENTE (PKCODCLI, NOMECLI, ENDCLI, CIDADECLI, UFCLI) VALUES (10, 'Dilma Rousseff', 'Rua abc, 44', 'Canoas', 'RS');


INSERT INTO TBGENERO (PKCODGEN, NOMEGEN) VALUES (1, 'Aventura');
INSERT INTO TBGENERO (PKCODGEN, NOMEGEN) VALUES (2, 'Acao');
INSERT INTO TBGENERO (PKCODGEN, NOMEGEN) VALUES (3, 'Romance');
INSERT INTO TBGENERO (PKCODGEN, NOMEGEN) VALUES (4, 'Drama');




INSERT INTO TBFILME (PKCODFILME, TITULO, FKCODGEN, FKCODCLASS) VALUES (1, 'Um Sonho de Liberdade', 1, 1);
INSERT INTO TBFILME (PKCODFILME, TITULO, FKCODGEN, FKCODCLASS) VALUES (2, '12 Homens e uma Sentenca ', 4, 3);
INSERT INTO TBFILME (PKCODFILME, TITULO, FKCODGEN, FKCODCLASS) VALUES (3, '2001, uma Odisseia no Espaco', 2, 2);
INSERT INTO TBFILME (PKCODFILME, TITULO, FKCODGEN, FKCODCLASS) VALUES (4, 'O Poderoso Chefao 2', 3, 2);
INSERT INTO TBFILME (PKCODFILME, TITULO, FKCODGEN, FKCODCLASS) VALUES (5, 'Star Wars: Episodio V ', 2, 4);
INSERT INTO TBFILME (PKCODFILME, TITULO, FKCODGEN, FKCODCLASS) VALUES (6, 'Cantando na Chuva', 2, 3);
INSERT INTO TBFILME (PKCODFILME, TITULO, FKCODGEN, FKCODCLASS) VALUES (7, 'O Poderoso Chefao', 1, 3);
INSERT INTO TBFILME (PKCODFILME, TITULO, FKCODGEN, FKCODCLASS) VALUES (8, 'Era Uma Vez em Toquio', 3, 2);
INSERT INTO TBFILME (PKCODFILME, TITULO, FKCODGEN, FKCODCLASS) VALUES (9, 'O Senhor dos Aneis', 3, NULL);
INSERT INTO TBFILME (PKCODFILME, TITULO, FKCODGEN, FKCODCLASS) VALUES (10, 'Os Sete Samurais', 1, 2);
INSERT INTO TBFILME (PKCODFILME, TITULO, FKCODGEN, FKCODCLASS) VALUES (11, 'Rastros de Odio ', 2, NULL);
INSERT INTO TBFILME (PKCODFILME, TITULO, FKCODGEN, FKCODCLASS) VALUES (12, 'Matrix', 4, 1);
INSERT INTO TBFILME (PKCODFILME, TITULO, FKCODGEN, FKCODCLASS) VALUES (13, 'Os Suspeitos ', 4, 1);
INSERT INTO TBFILME (PKCODFILME, TITULO, FKCODGEN, FKCODCLASS) VALUES (14, 'A Lista de Schindler', 3, 4);
INSERT INTO TBFILME (PKCODFILME, TITULO, FKCODGEN, FKCODCLASS) VALUES (15, 'Batman Cavaleiro das Trevas', 2, 4);


INSERT INTO TBLOCACAO (PKCODLOC, DATALOC, FKCODCLI) VALUES (1, '01/07/2012', 3);
INSERT INTO TBLOCACAO (PKCODLOC, DATALOC, FKCODCLI) VALUES (2, '01/07/2012', 2);
INSERT INTO TBLOCACAO (PKCODLOC, DATALOC, FKCODCLI) VALUES (3, '10/07/2012', 3);
INSERT INTO TBLOCACAO (PKCODLOC, DATALOC, FKCODCLI) VALUES (4, '20/08/2012', 8);
INSERT INTO TBLOCACAO (PKCODLOC, DATALOC, FKCODCLI) VALUES (5, '20/08/2012', 8);
INSERT INTO TBLOCACAO (PKCODLOC, DATALOC, FKCODCLI) VALUES (6, '25/08/2012', 1);
INSERT INTO TBLOCACAO (PKCODLOC, DATALOC, FKCODCLI) VALUES (7, '01/09/2012', 8);
INSERT INTO TBLOCACAO (PKCODLOC, DATALOC, FKCODCLI) VALUES (8, '01/09/2012', 7);
INSERT INTO TBLOCACAO (PKCODLOC, DATALOC, FKCODCLI) VALUES (9, '10/09/2012', 7);
INSERT INTO TBLOCACAO (PKCODLOC, DATALOC, FKCODCLI) VALUES (10, '15/09/2012', 3);
INSERT INTO TBLOCACAO (PKCODLOC, DATALOC, FKCODCLI) VALUES (11, '20/09/2012', 8);
INSERT INTO TBLOCACAO (PKCODLOC, DATALOC, FKCODCLI) VALUES (12, '20/09/2012', 1);
INSERT INTO TBLOCACAO (PKCODLOC, DATALOC, FKCODCLI) VALUES (13, '23/09/2012', 9);
INSERT INTO TBLOCACAO (PKCODLOC, DATALOC, FKCODCLI) VALUES (14, '26/09/2012', 10);
INSERT INTO TBLOCACAO (PKCODLOC, DATALOC, FKCODCLI) VALUES (15, '28/09/2012', 9);
INSERT INTO TBLOCACAO (PKCODLOC, DATALOC, FKCODCLI) VALUES (16, '28/09/2012', 8);
INSERT INTO TBLOCACAO (PKCODLOC, DATALOC, FKCODCLI) VALUES (17, '30/09/2012', 9);
INSERT INTO TBLOCACAO (PKCODLOC, DATALOC, FKCODCLI) VALUES (18, '07/10/2012', 10);
INSERT INTO TBLOCACAO (PKCODLOC, DATALOC, FKCODCLI) VALUES (19, '07/10/2012', 9);
INSERT INTO TBLOCACAO (PKCODLOC, DATALOC, FKCODCLI) VALUES (20, '07/10/2012', 10);



INSERT INTO TBRELFILMELOC (PKCODREL, FKCODFILME, FKCODLOC) VALUES (1, 2, 1);
INSERT INTO TBRELFILMELOC (PKCODREL, FKCODFILME, FKCODLOC) VALUES (2, 11, 1);
INSERT INTO TBRELFILMELOC (PKCODREL, FKCODFILME, FKCODLOC) VALUES (3, 4, 1);
INSERT INTO TBRELFILMELOC (PKCODREL, FKCODFILME, FKCODLOC) VALUES (4, 10, 1);
INSERT INTO TBRELFILMELOC (PKCODREL, FKCODFILME, FKCODLOC) VALUES (5, 13, 1);
INSERT INTO TBRELFILMELOC (PKCODREL, FKCODFILME, FKCODLOC) VALUES (6, 1, 2);
INSERT INTO TBRELFILMELOC (PKCODREL, FKCODFILME, FKCODLOC) VALUES (7, 5, 2);
INSERT INTO TBRELFILMELOC (PKCODREL, FKCODFILME, FKCODLOC) VALUES (8, 11, 3);
INSERT INTO TBRELFILMELOC (PKCODREL, FKCODFILME, FKCODLOC) VALUES (9, 12, 3);
INSERT INTO TBRELFILMELOC (PKCODREL, FKCODFILME, FKCODLOC) VALUES (10, 4, 3);
INSERT INTO TBRELFILMELOC (PKCODREL, FKCODFILME, FKCODLOC) VALUES (11, 6, 4);
INSERT INTO TBRELFILMELOC (PKCODREL, FKCODFILME, FKCODLOC) VALUES (12, 3, 5);
INSERT INTO TBRELFILMELOC (PKCODREL, FKCODFILME, FKCODLOC) VALUES (13, 7, 5);
INSERT INTO TBRELFILMELOC (PKCODREL, FKCODFILME, FKCODLOC) VALUES (14, 4, 6);
INSERT INTO TBRELFILMELOC (PKCODREL, FKCODFILME, FKCODLOC) VALUES (15, 1, 7);
INSERT INTO TBRELFILMELOC (PKCODREL, FKCODFILME, FKCODLOC) VALUES (16, 6, 7);
INSERT INTO TBRELFILMELOC (PKCODREL, FKCODFILME, FKCODLOC) VALUES (17, 9, 7);
INSERT INTO TBRELFILMELOC (PKCODREL, FKCODFILME, FKCODLOC) VALUES (18, 3, 8);
INSERT INTO TBRELFILMELOC (PKCODREL, FKCODFILME, FKCODLOC) VALUES (19, 1, 9);
INSERT INTO TBRELFILMELOC (PKCODREL, FKCODFILME, FKCODLOC) VALUES (20, 7, 9);
INSERT INTO TBRELFILMELOC (PKCODREL, FKCODFILME, FKCODLOC) VALUES (21, 4, 9);
INSERT INTO TBRELFILMELOC (PKCODREL, FKCODFILME, FKCODLOC) VALUES (22, 5, 10);
INSERT INTO TBRELFILMELOC (PKCODREL, FKCODFILME, FKCODLOC) VALUES (23, 2, 11);
INSERT INTO TBRELFILMELOC (PKCODREL, FKCODFILME, FKCODLOC) VALUES (24, 1, 12);
INSERT INTO TBRELFILMELOC (PKCODREL, FKCODFILME, FKCODLOC) VALUES (25, 12, 12);
INSERT INTO TBRELFILMELOC (PKCODREL, FKCODFILME, FKCODLOC) VALUES (26, 3, 13);
INSERT INTO TBRELFILMELOC (PKCODREL, FKCODFILME, FKCODLOC) VALUES (27, 5, 13);
INSERT INTO TBRELFILMELOC (PKCODREL, FKCODFILME, FKCODLOC) VALUES (28, 3, 14);
INSERT INTO TBRELFILMELOC (PKCODREL, FKCODFILME, FKCODLOC) VALUES (29, 14, 14);
INSERT INTO TBRELFILMELOC (PKCODREL, FKCODFILME, FKCODLOC) VALUES (30, 5, 14);
INSERT INTO TBRELFILMELOC (PKCODREL, FKCODFILME, FKCODLOC) VALUES (31, 7, 14);
INSERT INTO TBRELFILMELOC (PKCODREL, FKCODFILME, FKCODLOC) VALUES (32, 15, 14);
INSERT INTO TBRELFILMELOC (PKCODREL, FKCODFILME, FKCODLOC) VALUES (33, 12, 14);
INSERT INTO TBRELFILMELOC (PKCODREL, FKCODFILME, FKCODLOC) VALUES (34, 3, 15);
INSERT INTO TBRELFILMELOC (PKCODREL, FKCODFILME, FKCODLOC) VALUES (35, 2, 16);
INSERT INTO TBRELFILMELOC (PKCODREL, FKCODFILME, FKCODLOC) VALUES (36, 2, 17);
INSERT INTO TBRELFILMELOC (PKCODREL, FKCODFILME, FKCODLOC) VALUES (37, 6, 17);
INSERT INTO TBRELFILMELOC (PKCODREL, FKCODFILME, FKCODLOC) VALUES (38, 5, 17);
INSERT INTO TBRELFILMELOC (PKCODREL, FKCODFILME, FKCODLOC) VALUES (39, 13, 18);
INSERT INTO TBRELFILMELOC (PKCODREL, FKCODFILME, FKCODLOC) VALUES (40, 2, 19);
INSERT INTO TBRELFILMELOC (PKCODREL, FKCODFILME, FKCODLOC) VALUES (41, 9, 19);
INSERT INTO TBRELFILMELOC (PKCODREL, FKCODFILME, FKCODLOC) VALUES (42, 11, 20);
INSERT INTO TBRELFILMELOC (PKCODREL, FKCODFILME, FKCODLOC) VALUES (43, 10, 20);

Anexos

Luiz Fernando Fagundes
Luiz Fernand... Novo Membro Registrado
2 Mensagens 0 Curtidas
#4 Por Luiz Fernand...
28/04/2016 - 21:04
Tronner, Pirituba... eu não tenho nenhum esboço, pois não sei nem começar. hahaha
Tenta importar o arquivo em anexo e executar ele. Foi assim que eu fiz e funcionou.

Somente exemplificando o exercício, preciso que retorne na 4 colunas, nas quais:
1ª coluna todos os nomes dos clientes;
2ª coluna a quantidade de locações que foram realizadas por estes clientes durante o mês 8;
3ª coluna quantidade de locações no mês 9;
4ª coluna quantidade de locações no mês 10.

Eu não sei como fazer a sintaxe do código, sei que é preciso usar um COUNT para fazer a contagem das locações.
© 1999-2024 Hardware.com.br. Todos os direitos reservados.
Imagem do Modal