Wednesday, December 14, 2011

Case when null

Usamos CASE WHEN THEN para transformar dado un valor a otro, para personalizarlo. Por ejemplo, el típico F: Femenino y M: Masculino. Nuestro Case sería así:

SELECT blah, blah, blah, CASE sexo WHEN 'F' THEN 'FEMENINO' WHEN 'M' THEN 'MASCULINO' ELSE 'GAY?' END AS SEXO

Pero se podría dar el caso en que necesito mostrar al usuario dado un valor está en NULL entonces no se ejecutó alguna acción. Por ejemplo, tengo mi columna AprobadoPor, si está en NULL es porque no se ha aprobado el registro.

Para usar CASE WHEN THEN con valores nulos, es como sigue a continuación (checka que para estos casos, debes usar la palabra reservada Is Null, Is Not Null):

SELECT blah, blah, blah, CASE WHEN cs.AprobadoPor IS NULL THEN 'En espera' ELSE 'Sí' END AS APROBADO 

No comments:

Post a Comment