Sobes.tech
Middle

¿Cómo trabajar con NULL en SQL?

sobes.tech AI

Respuesta de la IA

En SQL, NULL significa ausencia de valor y debe tratarse de manera especial:

  • Comparaciones con NULL: Los operadores =, <> no funcionan con NULL como con un valor normal. Por ejemplo, column = NULL siempre devuelve FALSE.

  • Verificación de NULL: Use IS NULL o IS NOT NULL para comprobar la presencia o ausencia de un valor.

  • Manejo en agregados: Funciones como COUNT(column) no consideran NULL, mientras que COUNT(*) cuenta todas las filas.

  • Funciones para reemplazar NULL: COALESCE(column, default_value) devuelve el primer valor no-NULL de la lista.

  • Unión de tablas: En JOIN, las filas con NULL en campos clave pueden no coincidir, lo que afecta el resultado. Por ejemplo, INNER JOIN excluirá esas filas, mientras que LEFT JOIN las mantendrá con NULL en los campos de la tabla unida.

Ejemplo:

SELECT
  user_id,
  COALESCE(email, 'no-email@example.com') AS email_address
FROM users
WHERE last_login IS NOT NULL;

Aquí reemplazamos NULL en el campo email por una dirección predeterminada y seleccionamos solo usuarios con una fecha de último ingreso conocida.