Comandos Novos
28 de junho de 2010 — alinebossi
Olá pessoal, como prometido, colocarei aqui alguns exercícios e suas resoluções. Estes exercícios eu fiz em aula com o Prof. Carrilho da Fatec Americana.
Crie uma base de dados Universidade com as tabelas a seguir: Alunos (RA, nome, endereço, cidade) Disciplinas (COD_DISC, nome_disc, carga_hor) Professores (COD_PROF, nome, endereço, cidade) Turma (COD_DISC, COD_TURMA, COD_PROF, ANO, horário) Histórico (RA, COD_DISC, COD_TURMA, COD_PROF, ANO, freqüência, nota)
Após criar esta tabelas, e incluir alguns dados neslas, poderemos “brincar” e testar todos os comando que aprendemos nos artigos anteirores 1. Encontre o RA dos alunos com nota em BD em 2010 menor que 5 (obs: BD = código da disciplinas).
SELECT ra
FROM HISTORICO
WHERE cod_disc='BD' AND ano=2010 AND nota <5
2. Forneça o RA, nome e nota dos alunos com nota menor que 5 em BD em 2010.
SELECT a.RA, a.NOME, a.NOME from HISTORICO h, ALUNOS a where cod_disc='BD' and ano=2010 and nota <5 and a.RA=h.RA
3. Forneça o nome dos professores de BD em 2010.
SELECT distinct(p.NOME) from PROFESSORES p, TURMA t where p.COD_PROF=t.COD_PROF and t.ANO=2010 and t.COD_DISC='BD'
4. Encontre o nome, endereço, cidade dos alunos e código das disciplinas onde os alunos tiveram nota menor que 5 em 2010.
SELECT a.nome, a.ENDERECO, a.CIDADE, h.COD_DISC from ALUNOS a, HISTORICO h where a.RA = h.RA and h.NOTA<5 and h.ano=2010
5. Obtenha o nome e RA dos alunos do professor em 2010.
SELECT distinct a.NOME, a.RA from ALUNOS a, PROFESSORES p, HISTORICO h where h.RA=a.RA and h.COD_PROF = p.COD_PROF and p.NOME like '%NOME%' and h.ANO = 2010
6. Localize o nome e RA dos alunos do professor JOSÉ em 2010 ou 2009 que tiveram aulas com o professor MARCOS em algum ano.
SELECT distinct a.NOME, a.RA from ALUNOS a, PROFESSORES p, HISTORICO h where h.RA=a.RA and h.COD_PROF = p.COD_PROF and p.NOME like '%JOSÉ%' and (h.ANO = 2010 or h.ANO = 2009)
AND A.RA in
(select H.RA from HISTORICO h,