Consultes senzilles - Funcions de Tractament de NULLs
https://mariadb.com/kb/en/control-flow-functions/
NULLIF
NULLIF compara dues expressions i:
-
si són iguals retorna NULL
-
Si no són iguals retorna la primera expressió
La sintaxis és:
NULLIF(primera_expressió, segona_expressió)
Exemple NULLIF
Exemple NULLIF
SELECT LAST_NAME, FIRST_NAME,
NULLIF(LENGTH(LAST_NAME),
LENGTH(FIRST_NAME)) NullIf
FROM EMPLOYEES
WHERE DEPARTMENT_ID = 60;
+-----------+------------+--------+
| LAST_NAME | FIRST_NAME | NullIf |
+-----------+------------+--------+
| Hunold | Alexander | 6 |
| Ernst | Bruce | NULL |
| Lorentz | Diana | 7 |
+-----------+------------+--------+
COALESCE
COALESCE és una extensió de la funció IFNULL / NVL excepte que pot tenir varis valors i retorna el primer que no és NULL.
La sintaxis és:
COALESCE(expr_1, expr_2, expr_3, ... expr_n)
Exemple COALESCE
Exemple COALESCE
SELECT COALESCE(NULL, NULL, NULL, NULL, 5) C1,
COALESCE(NULL, NULL, 3, NULL, 5) C2,
COALESCE(NULL, NULL, NULL, NULL, NULL) C3;
+------+------+------+
| C1 | C2 | C3 |
+------+------+------+
| 5 | 3 | NULL |
+------+------+------+