DevPath · Aprende a programar ESPTEN

Conjuntos y funciones

Trabajar con NULL

¿Qué es NULL?

NULL representa la ausencia de valor: «desconocido» o «no aplica». No es cero ni una cadena vacía. Cualquier operación aritmética con NULL da NULL (precio + 10 es NULL si precio es NULL).

Lógica de tres valores

En SQL una condición puede ser verdadera, falsa o desconocida. Como NULL es «desconocido», comparar con él nunca da verdadero:

SELECT * FROM productos WHERE precio = NULL;   -- ❌ no devuelve nada

Aunque precio sea NULL, NULL = NULL es desconocido, no verdadero. Por eso existen operadores específicos:

SELECT * FROM productos WHERE precio IS NULL;       -- precios desconocidos
SELECT * FROM productos WHERE precio IS NOT NULL;   -- precios conocidos

Funciones para gestionar NULL

Ejemplos

Sustituir NULL por 0 con COALESCE

SELECT nombre, COALESCE(precio, 0) AS precio_final
FROM productos
ORDER BY id;
Pon esto en práctica

DevPath es un curso práctico: aquí lees la teoría; en la app la pones en práctica con ejercicios que se ejecutan de verdad, sin conexión.

Empezar gratis en la app →
← Operaciones de conjuntosFunciones escalares y de agregación →