Fórum Dúvida sobre SQL no Firebird 1.5 #54963

25/01/2006

0

Bom dia, colegas.

Se eu crio um SELECT que contém INNER JOINs que podem ter campos nulos(e consequentemente não atender à cláusula), no final, obterei um resultado nulo até mesmo para os outros campos que contèm dados e foram selecionados? Se sim, o que devo fazer para que a instrução ignore o Inner Join e traga os outros dados?

Deixa eu explicar melhor:
Dentro de uma SP,

FOR SELECT RI.COD_ITMH,SA.DES_SADT,PA.DAT_INICIO_PLANO,PA.NUM_DIA_PRE_EXIST,PA.NUM_DIA _INTERN_UE,PA.NUM_DIA_INTERN_APTO,
PA.NUM_DIA_INTERN_PS,PA.NUM_DIA_INTERN_AMBU,PA.NUM_DIA_INTERN_SIMP FROM TBCIME_PACIENTE PA
INNER JOIN TBCIME_REGRA_PACI RE ON RE.cod_cart_paci = PA.COD_CART_PACI
INNER JOIN TBCIME_REGRA_ITEM_PACI RI ON RI.COD_REGR = RE.COD_REGR
AND RI.COD_CART_PACI = RE.COD_CART_PACI
INNER JOIN tbsadt SA ON SA.cod_itmh = RI.cod_itmh
WHERE PA.COD_EMPR = :cod_empr
INTO :cod_itmh, :des_sadt,AT_INI,:num_pre, :num_u_e, :num_apto, :num_ps, :num_ambu, :num_simp

RI.COD_REGR pode ser nulo.

[color=green:7484255fa7]Movido de Delphi para Interbase/Firebird[/color:7484255fa7]


Thelinuxlich

Thelinuxlich

Responder

Posts

25/01/2006

Gandalf.nho

Nesses casos vc deverá usar LEFT JOIN ou RIGHT JOIN em vez de INNER JOIN


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar