2013-10-16 2 views
0

내가 필드가 null의 경우 포스트 Doctorado는 "아무도"가 없어야한다이 경우이 "아무도"표시되지해야오라클 외부는

NIVELESCOLARIDADDESC   NOMBRE       IDENTIFICACIONID 
------------------------------ ------------------------------ ---------------- 
Ninguna      Daniel         103044 
Basica Primaria    Fred         3334444 
Basica Primaria    Steven         1
Basica Secundaria    Helen         101245 
Educacion Media    Freda         205009 
Tecnico      Theo          107099 
Tecnico      Harry         1031232 
Tecnologo      Rose          105432 
Profesional     James         1099887 
Maestria      John         9909090 
Doctorado      Aida          521765 
Post Doctorado       

것을 가입을 외부 (outer)을 할 노력하고있어 가입.

SELECT PACIENTE.Nombre, 
     PACIENTE.IdentificacionID, 
     PACIENTE.NivelEscolaridadID, 
     NIVELESCOLARIDAD.NivelEscolaridadDesc 
FROM PACIENTE 
    LEFT OUTER JOIN NIVELESCOLARIDAD 
    ON (PACIENTE.NivelEscolaridadID = NIVELESCOLARIDAD.NivelEscolaridadID) 

답변

2

당신은 NOBODY으로 null 값을 대체 할 COALESCE을 사용할 수 있습니다 : 이것은 내가 가지고있는 코드입니다

SELECT 
    COALESCE(PACIENTE.Nombre, 'NOBODY') Nombre, 
    PACIENTE.IdentificacionID, 
    PACIENTE.NivelEscolaridadID, 
    NIVELESCOLARIDAD.NivelEscolaridadDesc 
FROM PACIENTE 
LEFT OUTER JOIN NIVELESCOLARIDAD 
    ON (PACIENTE.NivelEscolaridadID = NIVELESCOLARIDAD.NivelEscolaridadID) 
0
SELECT PACIENTE.Nombre, 
    PACIENTE.IdentificacionID, 
    PACIENTE.NivelEscolaridadID, 
    NVL(NIVELESCOLARIDAD.NivelEscolaridadDesc,'NOBODY') 
FROM PACIENTE 
    LEFT OUTER JOIN NIVELESCOLARIDAD 
    ON (PACIENTE.NivelEscolaridadID = NIVELESCOLARIDAD.NivelEscolaridadID) 
+1

당신의 대답은 확실히 약간의 설명이 가치가있다. 친절하게도 http://stackoverflow.com/help/how-to-answer를 참조하십시오. –