Ir al contenido principal

La expresión CASE. ok

Virtualmente todos los lenguajes de programación de tercera y cuarta generación implementan la expresión CASE. Como la función DECODE, la expresión CASE facilita la lógica condicional if-then-else. Hay dos variantes de la expresión CASE.  La expresión CASE sencilla lista el elemento de búsqueda condicional una vez, y la igualdad en el elemento de búsqueda se prueba por cada expresión de comparación. La expresión CASE buscada enumera una condición independiente para cada expresión de comparación.

La expresión CASE toma al menos tres parámetros obligatorios pero puede tomar muchos más. Su sintaxis depende si  es simple o case search.

CASE Simple

CASE search_expr
WHEN comparison1 THEN iftrue1
WHEN comparison2 THEN iftrue1
…..
WHEN comparisonN THEN iftrueN
ELSE iffalse
END

CASE Search

CASE
WHEN condition1 THEN iftrue1
WHEN condition2 THEN iftrue2
….
WHEN conditionN THEN iftrueN
ELSE iffalse
END

Ejemplos:
-- LA EXPRESION CASE

SELECT CASE location_id
          WHEN 1000 THEN 'MIL'
          WHEN 1100 THEN 'MIL CIEN'
          WHEN 1200 THEN 'MIL DOCIENTO'         
       END
FROM   LOCATIONS;

SELECT CASE location_id
          WHEN 1000 THEN 'MIL'
          WHEN 1100 THEN 'MIL CIEN'
          WHEN 1200 THEN 'MIL DOCIENTO'         
          ELSE 'NO REGISTRADO'
       END
FROM   LOCATIONS;

SELECT   CASE
          WHEN location_id = 1000 THEN 'MIL'
          WHEN location_id = 1100 THEN 'MIL CIEN'
          WHEN location_id = 1200 THEN 'MIL DOCIENTO'         
       END
FROM   LOCATIONS;

SELECT CASE
          WHEN location_id = 1000 THEN 'MIL'
          WHEN location_id = 1100 THEN 'MIL CIEN'
          WHEN location_id = 1200 THEN 'MIL DOCIENTO'         
          ELSE 'NO REGISTRADO'
       END

FROM   LOCATIONS;

Comentarios