Introducción
En SQL, el valor NULL
representa un dato desconocido o no aplicable. Es importante entender cómo manejar NULL
en tus consultas, ya que puede afectar los resultados de tus operaciones y comparaciones.
Conceptos Clave
- NULL: Representa un valor desconocido o no aplicable.
- IS NULL: Operador utilizado para verificar si un valor es
NULL
. - IS NOT NULL: Operador utilizado para verificar si un valor no es
NULL
.
¿Qué es NULL?
En SQL, NULL
es un marcador especial utilizado para indicar que un valor no está presente en la base de datos. No es lo mismo que un valor cero, una cadena vacía o cualquier otro valor predeterminado. NULL
es simplemente la ausencia de un valor.
Ejemplo de NULL
Considera la siguiente tabla empleados
:
id | nombre | salario |
---|---|---|
1 | Juan | 50000 |
2 | Ana | NULL |
3 | Pedro | 45000 |
En este caso, el salario de Ana es NULL
, lo que significa que no se ha registrado su salario.
Comparaciones con NULL
Las comparaciones directas con NULL
no funcionan como con otros valores. Por ejemplo, la expresión salario = NULL
no devolverá los resultados esperados. En su lugar, se deben usar los operadores IS NULL
y IS NOT NULL
.
Ejemplo de Comparación Incorrecta
La consulta anterior no devolverá ningún resultado, incluso si hay registros con NULL
en la columna salario
.
Comparación Correcta con IS NULL
Para encontrar registros donde el salario es NULL
, se debe usar IS NULL
:
Comparación Correcta con IS NOT NULL
Para encontrar registros donde el salario no es NULL
, se debe usar IS NOT NULL
:
Ejemplos Prácticos
Ejemplo 1: Seleccionar registros con valores NULL
Explicación: Esta consulta selecciona todos los registros de la tabla empleados
donde el valor de la columna salario
es NULL
.
Ejemplo 2: Seleccionar registros con valores no NULL
Explicación: Esta consulta selecciona todos los registros de la tabla empleados
donde el valor de la columna salario
no es NULL
.
Ejercicio Práctico
Ejercicio 1
Dada la siguiente tabla productos
:
id | nombre | precio |
---|---|---|
1 | Televisor | 300 |
2 | Lavadora | NULL |
3 | Microondas | 100 |
4 | Refrigerador | NULL |
- Escribe una consulta para seleccionar todos los productos cuyo precio es
NULL
. - Escribe una consulta para seleccionar todos los productos cuyo precio no es
NULL
.
Soluciones
- Seleccionar productos con precio
NULL
:
- Seleccionar productos con precio no
NULL
:
Resumen
En esta sección, hemos aprendido sobre el valor NULL
en SQL y cómo utilizar los operadores IS NULL
y IS NOT NULL
para manejar comparaciones con NULL
. Estos conceptos son fundamentales para trabajar con datos incompletos o desconocidos en tus bases de datos.
En el próximo tema, exploraremos cómo agregar datos utilizando la cláusula GROUP BY
.
Curso de SQL
Módulo 1: Introducción a SQL
Módulo 2: Consultas básicas de SQL
- Instrucción SELECT
- Filtrando datos con WHERE
- Ordenando datos con ORDER BY
- Limitando resultados con LIMIT
Módulo 3: Trabajando con múltiples tablas
Módulo 4: Filtrado avanzado de datos
- Usando LIKE para coincidencia de patrones
- Operadores IN y BETWEEN
- Valores NULL y IS NULL
- Agregando datos con GROUP BY
- Cláusula HAVING
Módulo 5: Manipulación de datos
Módulo 6: Funciones avanzadas de SQL
Módulo 7: Subconsultas y consultas anidadas
- Introducción a subconsultas
- Subconsultas correlacionadas
- EXISTS y NOT EXISTS
- Usando subconsultas en cláusulas SELECT, FROM y WHERE
Módulo 8: Índices y optimización de rendimiento
- Entendiendo los índices
- Creación y gestión de índices
- Técnicas de optimización de consultas
- Análisis del rendimiento de consultas
Módulo 9: Transacciones y concurrencia
- Introducción a las transacciones
- Propiedades ACID
- Instrucciones de control de transacciones
- Manejo de concurrencia