› Fóruns › SQL e PL/SQL › Auxílio com query › Auxílio com query
@luckzin
Recomendo o uso de JOIN. A QUERY fica mais limpa e de fácil entendimento.
SELECT
PRESTADOR.CD_PRESTADOR,
PRESTADOR.NM_PRESTADOR,
MAX(PRE_MED.DT_PRE_MED) AS DT_ULTIMA_PRESCICAO,
MAX(ATENDIME.DT_ATENDIMENTO) AS DT_ULTIMO_ATENDIMENTO
FROM PRESTADOR
LEFT JOIN PRE_MED ON PRE_MED.CD_PRESTADOR = PRESTADOR.CD_PRESTADOR
LEFT JOIN ATENDIME ON ATENDIME.CD_PRESTADOR = PRESTADOR.CD_PRESTADOR
GROUP BY
PRESTADOR.CD_PRESTADOR,
PRESTADOR.NM_PRESTADOR
ORDER BY
PRESTADOR.CD_PRESTADOR;
A QUERY que você fez corresponde ao INNER JOIN. Mas para trazer o que você quer é necessário utilizar o LEFT JOIN.
Segue um artigo sobre os tipos de JOIN:
http://www.devmedia.com.br/inner-cross-left-rigth-e-full-joins/21016