Notice: This page requires JavaScript to function properly.
Please enable JavaScript in your browser settings or update your browser.
Aprende Cláusula Group By | Agrupación
SQL Intermedio

bookCláusula Group By

¡Bienvenido al curso de SQL Intermedio!

En la primera sección, exploraremos cómo agrupar y agregar datos dentro de nuestras tablas.

Vamos a entender qué significa "agrupar datos" usando un ejemplo sencillo de una tabla de empleados:

Agrupación de datos

Tenemos la tarea de averiguar el número de empleados en cada departamento. Para ello, agruparemos los datos por la columna department y utilizaremos la agregación con la función COUNT(*).

Así es como se verá la implementación:

123
SELECT department, COUNT(*) AS number_of_employees FROM employees GROUP BY department
copy

Como puedes ver, la sintaxis para agrupar datos es la siguiente:

SELECT column1, AGG_FUNC(column2)
FROM table
GROUP BY column1

Nota

AGG_FUNC se refiere a funciones de agregación como MAX, MIN, COUNT, etc.

Esta sintaxis existe para encontrar ciertos valores utilizando funciones de agregación en columnas específicas.

Consideremos otro ejemplo: se nos ha encomendado la tarea de encontrar el departamento con el salario promedio más alto.

Para recuperar dichos datos, necesitamos agrupar los datos por la columna department y luego usar la función AVG() para calcular el salario promedio:

123
SELECT department, AVG(salary) as average_salary FROM employees GROUP BY department
copy

En esta parte de la sección, trabajaremos con la base de datos del sistema de metro de Montreal, que contiene la tabla metro_travel_time.

Esta tabla contendrá información sobre la línea de estación (line_name), su nombre (station_name) y la cantidad de tiempo que tarda un tren en viajar de una estación a la siguiente (time_to_next_station).

Así es como se ve esta tabla y una vista previa de los datos en ella:

Como puedes ver, esta no es una tabla compleja. Pensemos en dónde podemos utilizar agrupamiento aquí.

La opción más obvia es agrupar por los colores de las líneas del metro. Esto significa que podemos agregar los datos, agrupándolos por el color de la línea del metro.

Alias

En los ejercicios, a menudo utilizarás un concepto llamado alias. Un alias es básicamente un "apodo" para una columna que recuperas con una sentencia SELECT. Se especifica utilizando la siguiente sintaxis:

SELECT column AS alias

Un alias solo afecta cómo aparece la columna en la respuesta.

Por ejemplo, en lugar de MAX(time), la columna podría llamarse max_time si asignas ese alias. Esto hace que la salida sea más legible y clara.

Tarea

Swipe to start coding

Tu tarea es encontrar el mayor tiempo hasta la siguiente estación en cada línea. Esto nos permitirá determinar el mayor tiempo de viaje entre estaciones para cada línea de metro. Para lograrlo, utiliza la función MAX() y asígnale el alias max_time, agrupando los datos por la columna line_name.

Instrucciones breves

  • Recupera la columna line_name y el valor máximo de la columna time_to_next_station.
  • Añade el alias max_time para el valor máximo.
  • Agrupa los datos por la columna line_name.

Una vez que completes esta tarea, haz clic en el botón debajo del código para comprobar tu solución.

Solución

¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

Sección 1. Capítulo 1
single

single

Pregunte a AI

expand

Pregunte a AI

ChatGPT

Pregunte lo que quiera o pruebe una de las preguntas sugeridas para comenzar nuestra charla

Suggested prompts:

What are some other aggregate functions I can use with GROUP BY?

Can you explain how GROUP BY works with multiple columns?

Can you show an example using the Montreal Metro table?

close

Awesome!

Completion rate improved to 4

bookCláusula Group By

Desliza para mostrar el menú

¡Bienvenido al curso de SQL Intermedio!

En la primera sección, exploraremos cómo agrupar y agregar datos dentro de nuestras tablas.

Vamos a entender qué significa "agrupar datos" usando un ejemplo sencillo de una tabla de empleados:

Agrupación de datos

Tenemos la tarea de averiguar el número de empleados en cada departamento. Para ello, agruparemos los datos por la columna department y utilizaremos la agregación con la función COUNT(*).

Así es como se verá la implementación:

123
SELECT department, COUNT(*) AS number_of_employees FROM employees GROUP BY department
copy

Como puedes ver, la sintaxis para agrupar datos es la siguiente:

SELECT column1, AGG_FUNC(column2)
FROM table
GROUP BY column1

Nota

AGG_FUNC se refiere a funciones de agregación como MAX, MIN, COUNT, etc.

Esta sintaxis existe para encontrar ciertos valores utilizando funciones de agregación en columnas específicas.

Consideremos otro ejemplo: se nos ha encomendado la tarea de encontrar el departamento con el salario promedio más alto.

Para recuperar dichos datos, necesitamos agrupar los datos por la columna department y luego usar la función AVG() para calcular el salario promedio:

123
SELECT department, AVG(salary) as average_salary FROM employees GROUP BY department
copy

En esta parte de la sección, trabajaremos con la base de datos del sistema de metro de Montreal, que contiene la tabla metro_travel_time.

Esta tabla contendrá información sobre la línea de estación (line_name), su nombre (station_name) y la cantidad de tiempo que tarda un tren en viajar de una estación a la siguiente (time_to_next_station).

Así es como se ve esta tabla y una vista previa de los datos en ella:

Como puedes ver, esta no es una tabla compleja. Pensemos en dónde podemos utilizar agrupamiento aquí.

La opción más obvia es agrupar por los colores de las líneas del metro. Esto significa que podemos agregar los datos, agrupándolos por el color de la línea del metro.

Alias

En los ejercicios, a menudo utilizarás un concepto llamado alias. Un alias es básicamente un "apodo" para una columna que recuperas con una sentencia SELECT. Se especifica utilizando la siguiente sintaxis:

SELECT column AS alias

Un alias solo afecta cómo aparece la columna en la respuesta.

Por ejemplo, en lugar de MAX(time), la columna podría llamarse max_time si asignas ese alias. Esto hace que la salida sea más legible y clara.

Tarea

Swipe to start coding

Tu tarea es encontrar el mayor tiempo hasta la siguiente estación en cada línea. Esto nos permitirá determinar el mayor tiempo de viaje entre estaciones para cada línea de metro. Para lograrlo, utiliza la función MAX() y asígnale el alias max_time, agrupando los datos por la columna line_name.

Instrucciones breves

  • Recupera la columna line_name y el valor máximo de la columna time_to_next_station.
  • Añade el alias max_time para el valor máximo.
  • Agrupa los datos por la columna line_name.

Una vez que completes esta tarea, haz clic en el botón debajo del código para comprobar tu solución.

Solución

Switch to desktopCambia al escritorio para practicar en el mundo realContinúe desde donde se encuentra utilizando una de las siguientes opciones
¿Todo estuvo claro?

¿Cómo podemos mejorarlo?

¡Gracias por tus comentarios!

close

Awesome!

Completion rate improved to 4
Sección 1. Capítulo 1
single

single

some-alt