SQL firebird - utilizando o left outer join

13/03/2013

3

Olá pessoal,

tenho a seguinte SQL de meu banco.

select  ah_cnes CNES, ah_especialidade ESPECIALIDADE,
ah_cmpt MES_REF,
ah_num_aih AIH, 
ah_paciente_nome PACIENTE,
ah_paciente_numero_cns CNS,
ah_paciente_dt_nascimento DT_NASC,
ah_dt_internacao DT_INT,
ah_dt_saida DT_ALTA,
ah_proc_solicitado  PROC_SOLICITADO,
ah_proc_realizado  PROC_PRINCIPAL,
ah_diag_pri  DIAG_PRINC,
ah_car_internacao  CAR_INTERN,
sum(pa_valor) VALOR

FROM
TB_HAIH left outer join TB_HPA on
                       (pa_seq_princ = ah_seq) and (pa_oe_gestor = ah_oe_gestor) and
                       (pa_cmpt = ah_cmpt)

WHERE
ah_situacao='0' AND AH_CNES ='2396866' AND ah_car_internacao='01'

group by
ah_cnes, 
ah_especialidade,
ah_cmpt,
ah_num_aih, 
ah_paciente_nome,
ah_paciente_numero_cns,
ah_paciente_dt_nascimento,
ah_dt_internacao,
ah_dt_saida,
ah_proc_solicitado,
ah_proc_realizado,
ah_diag_pri,
ah_car_internacao

order by
ah_especialidade, ah_cmpt, ah_num_aih,ah_cnes



até aqui tudo ok! Porém, quando vou incluir a tabela TB_MUN no From... já não compila. Quero incluir a tabela para que retorne os campos (código do municipio e nome da cidade) mas não sei se o erro está em utilizar o "left outer join" com a terceira tabela. Este é o SQL que estou tentando criar com a tabela citada.

select
                  ah_cnes CNES, ah_especialidade ESPECIALIDADE,
                  ah_cmpt MES_REF,
                  ah_num_aih AIH,
                  ah_paciente_nome PACIENTE,
                  ah_paciente_numero_cns CNS,
                  ah_paciente_dt_nascimento DT_NASC,
                  ah_dt_internacao DT_INT,
                  ah_dt_saida DT_ALTA,
                  ah_proc_solicitado  PROC_SOLICITADO,
                  ah_proc_realizado  PROC_PRINCIPAL,
                  ah_diag_pri  DIAG_PRINC,
                  ah_car_internacao  CAR_INTERN,
                  AH_PACIENTE_LOGR_MUNICIPIO MUNICIPIO,
                  M.MUN_NOME,
                  sum(pa_valor) VALOR

FROM TB_MUN M,
             TB_HAIH left outer join TB_HPA on
                       (pa_seq_princ = ah_seq) and (pa_oe_gestor = ah_oe_gestor) and
                       (pa_cmpt = ah_cmpt)

WHERE
                  ah_situacao='0' AND AH_CNES ='2396866' AND ah_car_internacao='01' and (M.MUN_COD = T.AH_PACIENTE_LOGR_MUNICIPIO)
group by
                  ah_cnes,
                  ah_especialidade,
                  ah_cmpt,
                  ah_num_aih,
                  ah_paciente_nome,
                  ah_paciente_numero_cns,
                  ah_paciente_dt_nascimento,
                  ah_dt_internacao,
                  ah_dt_saida,
                  ah_proc_solicitado,
                  ah_proc_realizado,
                  ah_diag_pri,
                  ah_car_internacao,
                  AH_PACIENTE_LOGR_MUNICIPIO,
                  M.MUN_NOME
order by
                  ah_especialidade, ah_cmpt, ah_num_aih,ah_cnes, ah_paciente_nome
Responder
×
+1 DevUP
Acesso diário, +1 DevUP
Parabéns, você está investindo na sua carreira