Buscar

TRABALHO OTIMIZAÇÃO DE BANCO DE DADOS

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes

Faça como milhares de estudantes: teste grátis o Passei Direto

Esse e outros conteúdos desbloqueados

16 milhões de materiais de várias disciplinas

Impressão de materiais

Agora você pode testar o

Passei Direto grátis

Você também pode ser Premium ajudando estudantes
Você viu 3, do total de 3 páginas

Prévia do material em texto

Nome da Disciplina: Projeto e Otimização de Banco de Dados
Professor Renato Cortes
Aluna: Dayane S. Meireles
Sejam as seguintes tabelas:
Escreva as sentenças em SQL para responder as seguintes proposições:
a)Código e nome das disciplinas com carga horária entre 3 e 5 inclusive e que não sejam da área de Saúde.
SELECT CODD, NOMED FROM DISCIPLINA
WHERE CARGAD BETWEEN 3 AND 5
AND AREAD<> 'SAUDE'
b) Nome das disciplinas com carga horária menor que 5 e que sejam ministradas por professores doutores.
SELECT DISTINCT NOMED AS NOME_DISCIPLINA FROM DISCIPLINA D
JOIN GRADE G ON G.CODD= D.CODD
JOIN PROFESSOR P ON P.CODP = G.CODP
WHERE CARGAD < 5 AND P.TITULOP = 'DOUTOR'
c) Salas onde haverá aulas cujos cursos possuam duração superior a 3 anos e cujas disciplinas não sejam nem da área de Matemática, nem de Saúde e nem de Humanas e cujo professor seja Paulo, Joaquim ou Juliana.
SELECT DISTINCT SALA FROM GRADE G 
JOIN CURSO C ON C.CODC= G.CODC
JOIN DISCIPLINA D ON D.CODD=G.CODD
JOIN PROFESSOR P ON P.CODP=G.CODP
WHERE C.DURACAOC > 3
AND D.AREAD IS NULL OR D.AREAD NOT IN ('MATEMATICA','SAUDE','HUMANAS')
AND P.NOMEP IN ('PAULO','JOAQUIM','JULIANA')
d) Nomes dos professores que não ministram nenhuma disciplina.
SELECT NOMEP FROM PROFESSOR P 
WHERE NOT EXISTS (SELECT CODP FROM GRADE G WHERE G.CODP = P. CODP)
e) Nomes das disciplinas e o nome dos respectivos pré-requisitos.
SELECT D.NOMED as DISCILPINA,PRE.NOMED AS PRE_REQUISITO FROM DISCIPLINA D
JOIN DISCIPLINA PRE ON PRE.CODD = D.PREREQD
f) Nome das disciplinas que possuam carga horária maior que todas as disciplinas da área de Matemática.
SELECT NOMED AS NOME_DISCIPLINA FROM DISCIPLINA D 
WHERE CARGAD> (SELECT MAX(CARGAD) FROM DISCIPLINA
WHERE AREAD ='MATEMATICA')
g) Código de cada disciplina, com a quantidade de cursos em que a mesma é oferecida.
SELECT D.CODD, COUNT (DISTINCT G.CODC) AS QT_CURSOS FROM DISCIPLINA D
LEFT JOIN GRADE G ON G.CODD = D.CODD GROUP BY D.CODD
h) Carga horária média das áreas com carga horária média maior ou igual a 3.
SELECT AVG (CARGAD) AS CARGA_HORARIA_MEDIA FROM DISCIPLINA GROUP BY AREAD HAVING AVG(CARGAD) >= 3
i) Nome das disciplinas que não têm pré-requisito e que não são pré-requisito.
SELECT D.NOMED FROM DISCIPLINA D
WHERE D.PREREQD IS NULL
AND NOT EXISTS
(SELECT CODD FROM DISCIPLINA DI2 WHERE DI2.PREREQD = D.CODD)
j) Nome dos cursos que têm a mesma duração do curso de Engenharia Elétrica e que têm mensalidade maior que a sua.
SELECT C.NOMEC FROM CURSO C
WHERE C.DURACAOC = (SELECT C2.DURACAOC FROM CURSO C2 WHERE C2.NOMEC = 'ENG ELETRICA')
AND C.MENSC > (SELECT C2.MENSC FROM CURSO C2 WHERE C2.NOMEC = 'ENG ELETRICA')
AND C.NOMEC <> 'ENG ELETRICA'

Continue navegando