Cuando introduce su consulta en el Editor SQL o crea un cálculo, utiliza sintaxis Presto SQL. Para devolver valores en función de si se cumplen determinadas condiciones, puede que le resulten útiles estas expresiones comunes.
CASO
Para evaluar una lista de condiciones y devolver un valor basado en la primera coincidencia o condición verdadera, utilice una expresión CASE
, como para habilitar la lógica if/else. CASE
tiene dos formatos:
- En su forma simple,
CASE
evalúa la lista para una expresión específica y devuelve su valor, como por ejemplo:
CASE expresión WHEN valor THEN resultado [ WHEN ... ] [ ELSE resultado ] END
- En su forma buscada ,
CASE
evalúa una lista de booleanos y devuelve el valor de la primera condiciónTRUE
, como por ejemplo:
CASE WHEN condition THEN result [ WHEN ... ] [ ELSE result ] END
Por ejemplo, en su forma Básica para devolver un valor ("uno" o "dos") basado en una expresión coincidente:
SELECT expresión, CASE expresión WHEN 1 THEN 'uno' WHEN 2 THEN 'dos' ELSE 'muchos' END
Si ninguna condición es verdadera, CASE
devuelve el valor de la cláusula ELSE
("muchos", en este ejemplo), o NULL
si no hay cláusula ELSE
.
Nota: Para devolver un valor basado en si una única condición es verdadera, utilice una sentencia IF
.
FUSIONAR
Para devolver el primer valor no nulo de una lista, utilice la expresión COALESCE
como COALESCE(valor1, valor2, valor3).
SI
Para devolver un valor dependiendo de si una condición es verdadera o falsa, utilice la sentencia IF
como IF(condición, valor_verdadero, valor_falso).
Nota: Si la condición es falsa y no se especifica false_value, la sentencia IF
devuelve NULL
.
IS NULL o IS NOT NULL
Para comprobar si un valor está vacío o NULL
, utilice el operador IS NULL
o IS NOT NULL
:
- Para comprobar si hay valores vacíos, utilice
IS NULL
. - Para comprobar valores no vacíos, utilice
IS NOT NULL
.
Por ejemplo, para comprobar los datos de los clientes que no tienen ninguno:
SELECT Nombre_Cliente, Nombre_Contacto, Dirección
FROM Clientes
WHERE Dirección IS NULL
PRUEBA
Para devolver NULL
cuando una expresión falla debido a datos corruptos o inválidos, utilice la expresión TRY
como TRY(expresión). TRY
gestiona estos errores:
- División por cero
- No válido
CAST
o argumento de función - Valor numérico fuera de rango.