Built-In Aggregate Part 2
Parte de la sección Fundamentos del Journey de SQL de Coddy — lección 35 de 72.
A veces necesitamos usar funciones de agregación de formas más complejas, como comparar cada fila con un valor agregado. Aquí es donde las consultas anidadas resultan útiles.
Cuando desees realizar cálculos que combinen filas individuales con valores agregados, necesitas utilizar una consulta anidada. He aquí por qué:
Esto no te dará el resultado por fila que deseas:
SELECT value + MIN(value)
FROM table1La razón es que las funciones de agregación trabajan sobre la columna completa, mientras que la referencia 'value' está intentando trabajar fila por fila. Para solucionar esto, utilizamos una consulta anidada:
SELECT value + (SELECT MIN(value) FROM table1)
FROM table1Esto funciona porque la consulta anidada (SELECT MIN(value) FROM table1) se ejecuta primero y devuelve un único valor, que luego puede utilizarse en la consulta principal para cada fila.
Casos de uso comunes para agregados anidados:
1. Comparar cada valor con el promedio
2. Cálculo del porcentaje del total
3. Encontrar diferencias respecto a los valores máximos o mínimos
Desafío
FácilTablas y columnas disponibles:
<strong>items</strong>:<strong>id</strong>,<strong>price</strong>
Calcula cuánto excede el precio de cada artículo al precio promedio de todos los artículos. Muestra el ID del artículo, su precio y la diferencia respecto al promedio. Nombra la columna de la diferencia como diff_from_avg.
Ordena los resultados por la diferencia en orden descendente.
Pruébalo tú mismo
Esta lección incluye un breve cuestionario. Empieza la lección para responderlo y registrar tu progreso.
Todas las lecciones de Fundamentos
4More Keywords
The IN keywordThe BETWEEN keywordThe LIKE keywordThe AS keywordRecap - Cellphone Models2Conditions
Conditions BasicsThe AND keywordThe OR keywordThe NOT keywordMultiple Conditions CombinedParenthesisBooleans5Arithmetic Operations
Mathematical OperatorsMathematical ColumnsThe Modulo OperationThe ROUND() Function3Specific Return Format
Null valuesSort Results Part 1Sort Results Part 2Recap - Cyber Security FirmLimit number of recordsRecap - Vehicle Factory6Intro Challenges
Recap - Parliamentary ElectionRecap - Police Criminal ArrestRecap - Bar Beverage ContainerRecap - Engineer new columns