Академический Документы
Профессиональный Документы
Культура Документы
Operadores Relacionais
Exemplo 1:
Selecionar o nome de todos os mdicos e a descrio de sua especialidade:
SELECT med.nom_med, esp.dsc_esp
FROM medico med
JOIN especialidade esp
ON (esp.cod_esp = med.cod_esp)
ORDER BY med.nom_med
Exemplo 2:
Selecionar o nome de todos os pacientes e o nome da clnica onde esto:
SELECT pac.nom_pac, cli.nom_cli
FROM paciente pac
JOIN clinica cli
ON (cli.cnpj_cli = pac.cnpj_cli)
ORDER BY pac.nom_pac
Exemplo 3:
Selecionar a descrio de todas as especialidades e o nome dos mdicos ligados a ela:
SELECT med.nom_med, esp.dsc_esp
FROM medico med
JOIN especialidade esp
ON (esp.cod_esp = med.cod_esp)
ORDER BY med.nom_med
Exemplo 4:
Selecionar o nmero e o andar de todos os quartos (a partir do 3 andar) e o nome do paciente que
possa estar ligado a eles:
SELECT qua.num_qua, qua.num_and, pac.nom_pac
FROM quarto qua
RIGHT JOIN paciente pac
ON (qua.cpf_pac = pac.cpf_pac)
WHERE qua.num_and >= 3
ORDER BY qua.num_and, qua.num_qua
Exemplo 1:
Selecionar o cpf e o nome do paciente que possui a maior data de
nascimento:
SELECT cpf_pac, nom_pac
FROM paciente
WHERE dat_nas = (SELECT MAX(dat_nas) FROM paciente)
Exemplo 2:
Selecionar o crm e o nome do mdico que possui o menor salrio da clnica:
SELECT crm_med, nom_med
FROM medico
WHERE val_sal = (SELECT MIN(val_sal) FROM medico)
Exerccio:
E se fosse pedido para selecionar todos os pacientes que no tiveram
tratamento no ltimo ano?
Exemplo 1:
Selecione o cdigo da especialidade e a quantidade de mdicos
que esto cadastrados nela:
SELECT cod_esp, COUNT(crm_med) AS Qtd Mdicos
FROM formacao
GROUP BY cod_esp
Exerccio:
E se fosse pedido para selecionar somente as especialidades com
mais de 2 mdicos cadastrados nela?
Exerccio:
SELECT cod_esp, COUNT(crm_med) AS Qtd
Mdicos
FROM formacao
GROUP BY cod_esp
HAVING COUNT(crm_med) > 2
8