Prévia do material em texto
Universidade Estácio de Sá- Prof. George Hamilton Exercício de Banco de Dados II – Diagrama de Estrutura de Dados Questões de SQL 1) Selecionar a matrícula e o nome de cada aluno que não tenha realizado alguma prova, mas que cursa disciplina. 2) Selecionar a matrícula e o nome dos alunos que cursam apenas uma disciplina. 3) Selecionar os nomes dos aluno que realizaram mais de duas avaliações, das disciplinas do professor George Hamailton. 4) Selecionar o código e nome da disciplina que possui mais de um professor, mas que não existam alunos que cursam essa disciplina. 5) Selecionar as disciplinas que não tiveram provas que foram aplicadas (realizadas pelos alunos) ainda, que possuam mais do que 25 alunos que as cursam. 6) Supondo que todas as provas aplicadas tivessem que ser revistas, selecionar nome de cada disciplina, o código da prova e a quantidade de provas aplicadas que devem ser corrigidas novamente 7) Selecione a matrícula e nome do aluno, bem como, o nome e média aritmética de cada disciplina que ele realizou provas, das disciplinas ministradas pelo professor George Hamilton. 8) Selecione a matrícula e nome do aluno, bem como, o nome e média aritmética de cada disciplina que ele realizou provas, com média inferior a 6 e superior a 4. 9) Selecione o nome e média aritmética de cada disciplina que tenha média superior a 9, das disciplinas que tenham mais do que 25 alunos cursando.. 10) Selecionar a matrícula e nome do aluno, que tenha cursado a disciplina BD2 mais de duas vezes. SCRIPT DO ESQUEMA CREATE TABLE DISCIPLINA ( CODIGO VARCHAR2(4) NOT NULL, NOME VARCHAR2(30) NULL, PRIMARY KEY (CODIGO) ); CREATE TABLE PROVA ( CODPROVA VARCHAR2(3) NOT NULL, DATA DATE NULL, CODIGO VARCHAR2(4) NULL, PRIMARY KEY (CODPROVA), FOREIGN KEY (CODIGO) REFERENCES DISCIPLINA ); CREATE TABLE ALUNO ( MATRICULA VARCHAR2(6) NOT NULL, NOME VARCHAR2(30) NULL, PRIMARY KEY (MATRICULA) ); CREATE TABLE ALUNO_PROVA ( MATRICULA VARCHAR2(6) NOT NULL, CODPROVA VARCHAR2(3) NOT NULL, NOTA NUMBER(4,2) NULL, PRIMARY KEY (MATRICULA, CODPROVA), FOREIGN KEY (CODPROVA) REFERENCES PROVA, FOREIGN KEY (MATRICULA) REFERENCES ALUNO ); CREATE TABLE PROFESSOR ( MATPROF VARCHAR2(6) NOT NULL, NOME VARCHAR2(30) NULL, PRIMARY KEY (MATPROF) ); CREATE TABLE MINISTRA ( MATPROF VARCHAR2(6) NOT NULL, CODIGO VARCHAR2(4) NOT NULL, PRIMARY KEY (MATPROF, CODIGO), FOREIGN KEY (CODIGO) REFERENCES DISCIPLINA, FOREIGN KEY (MATPROF) REFERENCES PROFESSOR ); CREATE TABLE CURSA ( DATA DATE NOT NULL, MATRICULA VARCHAR2(6) NOT NULL, CODIGO VARCHAR2(4) NOT NULL, PRIMARY KEY (DATA, MATRICULA, CODIGO), FOREIGN KEY (CODIGO) REFERENCES DISCIPLINA, FOREIGN KEY (MATRICULA) REFERENCES ALUNO); INSERT INTO DISCIPLINA VALUES ('I001','BANCO DE DADOS'); INSERT INTO DISCIPLINA VALUES ('I002','PROG IV'); INSERT INTO DISCIPLINA VALUES ('I003','ANALISE OO'); INSERT INTO DISCIPLINA VALUES ('I004','INTELIGENCIA ARTIFICIAL'); INSERT INTO DISCIPLINA VALUES ('I005','REDES'); INSERT INTO DISCIPLINA VALUES ('I006','ANALISE ESTRUTURADA'); INSERT INTO PROFESSOR VALUES ('MATP01','GEORGE HAMILTON'); INSERT INTO PROFESSOR VALUES ('MATP02','ANDRADE'); INSERT INTO PROFESSOR VALUES ('MATP03','COSTA'); INSERT INTO PROFESSOR VALUES ('MATP04','GHACOSTA'); INSERT INTO MINISTRA VALUES ('MATP01','I001'); INSERT INTO MINISTRA VALUES ('MATP01','I002'); INSERT INTO MINISTRA VALUES ('MATP01','I003'); INSERT INTO MINISTRA VALUES ('MATP02','I001'); INSERT INTO MINISTRA VALUES ('MATP04','I002'); INSERT INTO MINISTRA VALUES ('MATP04','I005'); INSERT INTO ALUNO VALUES ('MATA01','RITA'); INSERT INTO ALUNO VALUES ('MATA02','PEDRO'); INSERT INTO ALUNO VALUES ('MATA03','JOAO'); INSERT INTO ALUNO VALUES ('MATA04','RENATA'); INSERT INTO ALUNO VALUES ('MATA05','PRYLA'); INSERT INTO ALUNO VALUES ('MATA06','GENATA'); INSERT INTO ALUNO VALUES ('MATA07','CIDA'); INSERT INTO ALUNO VALUES ('MATA08','MARCOS'); INSERT INTO ALUNO VALUES ('MATA09','RICARDO'); INSERT INTO ALUNO VALUES ('MATA10','PEDROSO'); INSERT INTO ALUNO VALUES ('MATA11','JOAO CARLOS'); INSERT INTO ALUNO VALUES ('MATA12','RENATA TAVARES'); INSERT INTO ALUNO VALUES ('MATA13','PRISANA'); INSERT INTO ALUNO VALUES ('MATA14','GENTO'); INSERT INTO ALUNO VALUES ('MATA15','RIDA'); INSERT INTO ALUNO VALUES ('MATA16','MARCOS FONSECA'); INSERT INTO CURSA VALUES (to_date('17-02-2004','dd-mm-yyyy'),'MATA01','I001'); INSERT INTO CURSA VALUES (to_date('17-02-2004','dd-mm-yyyy'),'MATA02','I001'); INSERT INTO CURSA VALUES (to_date('17-02-2004','dd-mm-yyyy'),'MATA03','I001'); INSERT INTO CURSA VALUES (to_date('17-02-2004','dd-mm-yyyy'),'MATA04','I001'); INSERT INTO CURSA VALUES (to_date('17-02-2004','dd-mm-yyyy'),'MATA01','I002'); INSERT INTO CURSA VALUES (to_date('17-02-2004','dd-mm-yyyy'),'MATA06','I002'); INSERT INTO CURSA VALUES (to_date('17-02-2004','dd-mm-yyyy'),'MATA07','I002'); INSERT INTO CURSA VALUES (to_date('17-02-2004','dd-mm-yyyy'),'MATA09','I003'); INSERT INTO CURSA VALUES (to_date('17-02-2004','dd-mm-yyyy'),'MATA01','I003'); INSERT INTO CURSA VALUES (to_date('17-02-2004','dd-mm-yyyy'),'MATA02','I003'); INSERT INTO CURSA VALUES (to_date('17-02-2004','dd-mm-yyyy'),'MATA08','I003'); INSERT INTO PROVA VALUES ('P1',to_date('01-03-2004','dd-mm-yyyy'),'I001'); INSERT INTO PROVA VALUES ('P2',to_date('01-03-2004','dd-mm-yyyy'),'I002'); INSERT INTO PROVA VALUES ('P3',to_date('01-04-2004','dd-mm-yyyy'),'I003'); INSERT INTO PROVA VALUES ('P4',to_date('01-05-2004','dd-mm-yyyy'),'I001'); INSERT INTO ALUNO_PROVA VALUES ('MATA01','P1',8.7); INSERT INTO ALUNO_PROVA VALUES ('MATA02','P1',9.5); INSERT INTO ALUNO_PROVA VALUES ('MATA03','P1',9.0); INSERT INTO ALUNO_PROVA VALUES ('MATA04','P1',6.7); INSERT INTO ALUNO_PROVA VALUES ('MATA04','P2',5.7); INSERT INTO ALUNO_PROVA VALUES ('MATA01','P2',7.3); INSERT INTO ALUNO_PROVA VALUES ('MATA06','P2',9.2); INSERT INTO ALUNO_PROVA VALUES ('MATA07','P2',3.7); INSERT INTO ALUNO_PROVA VALUES ('MATA09','P3',8.7); INSERT INTO ALUNO_PROVA VALUES ('MATA01','P3',4.3); INSERT INTO ALUNO_PROVA VALUES ('MATA02','P3',6.5); INSERT INTO ALUNO_PROVA VALUES ('MATA08','P3',7.7); �PAGE � �PAGE �4� Trabalho de Banco de Dados II -Prof. George Hamilton