Oracle外部加入

时间:2013-10-16 18:13:44

标签: sql oracle

我正在尝试进行外连接,当一个字段为空时,必须出现“NOBODY”

NIVELESCOLARIDADDESC           NOMBRE                         IDENTIFICACIONID
------------------------------ ------------------------------ ----------------
Ninguna                        Daniel                                   103044 
Basica Primaria                Fred                                    3334444 
Basica Primaria                Steven                                  1012334 
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                        

在这种情况下,Post Doctorado应该有“NOBODY”。这是我的代码:

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

2 个答案:

答案 0 :(得分:2)

您可以使用COALESCEnull值替换为NOBODY

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

答案 1 :(得分:0)

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