Menu
Coddy logo textTech

Subqueries Part 1

Parte de la sección Fundamentos del Journey de SQL de Coddy — lección 38 de 72.

Las subconsultas nos permiten combinar múltiples consultas en una sola. Por ejemplo, considere la siguiente <strong>employees</strong> tabla:

idsalario
148
234
346
413
528

Necesitamos una subconsulta porque no podemos usar WHERE salary > AVG(salary) directamente ya que las funciones de agregación como AVG() no se pueden usar en una cláusula WHERE - solo se pueden usar después de que los datos hayan sido agrupados.

SELECT id, salary
FROM employees
WHERE salary > (
    SELECT AVG(salary)
    FROM employees
);

Una subconsulta nos ayuda a encontrar empleados que ganan más que el salario promedio de la empresa calculando primero el promedio (consulta interna) y luego usando ese valor para filtrar empleados (consulta externa).

Dado que el promedio es: (48 + 34 + 46 + 13 + 28) / 5 = 33.8, este es el resultado de la consulta:

idsalario
148
234
346
challenge icon

Desafío

Fácil

Tablas y columnas disponibles:

  • <strong>shop</strong>: <strong>price</strong>, <strong>quantity</strong>, <strong>category</strong>, <strong>list_date</strong>

Escribe una consulta para encontrar todos los productos (selecciona todas las columnas) donde el precio es mayor que el precio promedio de todos los productos.

Usa una subconsulta en la cláusula WHERE para calcular el precio promedio, luego compara el precio de cada producto contra este promedio.

Hoja de referencia

Las subconsultas permiten combinar múltiples consultas en una. Son útiles cuando no puedes usar funciones de agregación como AVG() directamente en una cláusula WHERE.

Sintaxis básica de subconsulta:

SELECT column1, column2
FROM table_name
WHERE column1 > (
    SELECT AVG(column1)
    FROM table_name
);

La subconsulta (consulta interna) se ejecuta primero para calcular el promedio, luego la consulta externa usa ese resultado para filtrar los datos.

Pruébalo tú mismo

quiz iconPonte a prueba

Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.

Todas las lecciones de Fundamentos