Saltar al contenido

COALESCE

SQL · Unidad 4: NULL y expresiones

La etiqueta de Sofía salió en blanco, y su paquete tiene que salir igual. ¿Qué se pone donde iba la ciudad? COALESCE recibe varios valores y devuelve el primero que no es NULL.

Aquí prueba con ciudad. Si hay una, se queda con ella. Si no, pasa al siguiente valor, que es el texto que tú elegiste.

SELECT nombre,
  COALESCE(ciudad, 'Sin ciudad')
  AS vive_en
FROM clientes
WHERE id <= 4;

Devuelve

nombrevive_en
AnaLima
LuisBogotá
SofíaSin ciudad
MateoQuito

El resto de la explicación está en la lección, que es del plan completo.

Ejercicios de esta lección

Se hacen en la app, que los corrige al momento y explica por qué.

  1. 1. Predice la salida

    COALESCE acepta los valores que quieras y los revisa de izquierda a derecha. ¿Qué devuelve esta consulta?

  2. 2. Completa el código

    Alguien va a llamar a Sofía y a Valeria, las clientas 3 y 5, y en su lista quiere ver de dónde es cada una. Donde falte la ciudad debe decir «Sin ciudad». Completa.

  3. 3. Encuentra el bug

    ¿A qué destinos manda paquetes la tienda? La lista debería traer las cuatro ciudades y, al final, «Sin ciudad». Trae una sola fila, que dice «Sin ciudad». ¿Qué línea tiene el problema?

  4. 4. Predice la salida

    Aquí alguien envolvió la ficha entera, y no solo la pieza que puede faltar. Sofía es la clienta 3 y Mateo el cliente 4. ¿Qué devuelve esta consulta?

  5. 5. Ordena las líneas

    Hoy salen sobres para Sofía, Valeria y Bruno, los clientes 3, 5 y 8. Cada uno lleva una ficha con el nombre y la ciudad entre paréntesis, como «Bruno (Lima)». Ordena la consulta para que ninguna ficha salga vacía. Sobra una línea.

  6. 6. Opción múltiple

    Alguien corre esta consulta para arreglar la ficha de Sofía. Después de correrla, ¿a quién devuelve un filtro con WHERE ciudad IS NULL?

  7. 7. Opción múltiple

    ¿En cuál de estos casos cambiar un NULL por 0 no le miente a nadie?

  8. 8. Encuentra el caso que falla

    Esta consulta busca al cliente más joven de Lima, entre quienes tienen la edad anotada. Quien la escribió se quitó de encima los NULL con un COALESCE. ¿Con cuál de estos datos contesta mal?

  9. 9. Ordena las líneas

    Los cupones de la lección pasada, escritos de otra forma. Ordena la consulta que muestra a quien no es de Lima, contando también a quien no tiene ciudad. Sobra una línea.

  10. 10. Escribe el código

    El directorio completo, esta vez sin dejar a nadie fuera. Escribe una consulta con dos columnas en este orden, la ciudad de cada cliente, que diga Sin ciudad donde falte, y su nombre. Las filas van por esa ciudad en orden alfabético y, dentro de cada una, por nombre.

Hacer esta lección

Se abre en el navegador. Esta lección es del plan completo; la primera unidad de cada curso es gratis.

Ver todas las lecciones →