Saltar al contenido

JOIN

SQL · Unidad 7: Unir tablas

¿Quién hizo cada pedido? El dueño quiere la lista con nombres, y a mano son doce viajes a clientes, uno por pedido.

JOIN hace ese viaje por ti. Pone junto a cada pedido la fila de su cliente. ON dice cuál es, la del cliente cuyo id es igual al cliente_id del pedido. Como las dos tablas tienen una columna id, se escribe la tabla, un punto y la columna. clientes.id se lee «el id de clientes».

SELECT fecha, nombre
FROM pedidos
JOIN clientes
  ON pedidos.cliente_id = clientes.id;

Devuelve

fechanombre
2026-01-03Ana
2026-01-04Ana
2026-01-04Luis
2026-01-09Mateo
2026-01-10Valeria
2026-01-11Luis
2026-01-12Ana
2026-01-12Valeria
2026-01-14Diego
2026-01-15Sofía
2026-01-15Diego
2026-01-20Luis

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. Opción múltiple

    Esa lista tiene hoy 12 filas. Mañana Bruno, que está en clientes y nunca ha comprado, hace su primer pedido. ¿Cuántas filas tendrá entonces?

  2. 2. Completa el código

    ¿Quién compró en los primeros días, antes del 5 de enero? Completa las dos palabras que unen las tablas.

  3. 3. Predice la salida

    Valeria es la clienta 5. Ha hecho dos pedidos, uno el 10 de enero y otro el 12. ¿Qué devuelve esta consulta?

  4. 4. Completa el código

    El 4 de enero hubo dos pedidos. ¿Qué producto era cada uno, y cuántas unidades? Completa el lado del ON que falta.

  5. 5. Predice la salida

    Los pedidos de 3 unidades o más salen en caja grande, y son tres. El pedido 3, del cliente 2, lleva 5 unidades del producto 2. El pedido 4, del cliente 4, lleva 10 del producto 4. El pedido 8, de la clienta 5, lleva 3 del producto 4. En productos, el 2 es el Ratón, el 4 es el Cable y el 5 es el Portátil. ¿Qué devuelve esta consulta?

  6. 6. Ordena las líneas

    Tres pedidos fueron de 2 unidades. ¿De quién es cada uno, y a qué ciudad va? Ordena la consulta que muestra la fecha, el nombre y la ciudad, con el más reciente arriba. Sobran dos líneas.

  7. 7. Opción múltiple

    Alguien cambia JOIN clientes por INNER JOIN clientes en la lista de pedidos con nombre, que da 12 filas. ¿Qué pasa con el resultado?

  8. 8. Encuentra el bug

    La lista de los pedidos de caja grande, los de 3 unidades o más, con quién hizo cada uno. Corre sin error, y dice que el del 12 de enero es de Bruno. Bruno nunca ha pedido nada. ¿Qué línea tiene el problema?

  9. 9. Ordena las líneas

    ¿Qué se ha pedido del 14 de enero en adelante? Ordena la consulta que muestra la fecha, el producto y la cantidad, por fecha y, dentro de cada día, con el pedido más pequeño primero. Sobran dos líneas.

  10. 10. Escribe el código

    Hoy es 15 de enero de 2026, y en pedidos hay uno con fecha posterior. ¿De quién es? Escribe una consulta con dos columnas en este orden, la fecha del pedido y el nombre de quien lo hizo, de los pedidos con fecha posterior a hoy.

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 →