En este tema, aprenderás cómo utilizar funciones de agregación en SQL para resumir y analizar datos en BigQuery. Las funciones de agregación son esenciales para obtener información significativa a partir de grandes conjuntos de datos. Vamos a cubrir los conceptos básicos y proporcionar ejemplos prácticos para que puedas aplicar estos conocimientos en tus propios proyectos.
Conceptos Clave
- Funciones de Agregación: Operaciones que combinan múltiples filas de datos en una sola salida.
- GROUP BY: Cláusula utilizada para agrupar filas que tienen valores iguales en columnas especificadas.
- HAVING: Cláusula utilizada para filtrar grupos de resultados después de aplicar
GROUP BY
.
Funciones de Agregación Comunes
Función | Descripción |
---|---|
COUNT() |
Cuenta el número de filas. |
SUM() |
Suma los valores de una columna. |
AVG() |
Calcula el promedio de los valores de una columna. |
MIN() |
Encuentra el valor mínimo en una columna. |
MAX() |
Encuentra el valor máximo en una columna. |
Ejemplos Prácticos
Ejemplo 1: Contar el Número de Filas
Explicación: Esta consulta cuenta el número total de filas en la tabla my_table
.
Ejemplo 2: Sumar Valores de una Columna
Explicación: Esta consulta suma todos los valores de la columna sales
en la tabla my_table
.
Ejemplo 3: Calcular el Promedio
Explicación: Esta consulta calcula el promedio de los valores en la columna sales
.
Ejemplo 4: Encontrar el Valor Mínimo y Máximo
Explicación: Esta consulta encuentra el valor mínimo y máximo en la columna sales
.
Uso de GROUP BY
La cláusula GROUP BY
se utiliza para agrupar filas que tienen valores iguales en columnas especificadas. Esto es útil cuando deseas aplicar funciones de agregación a grupos de datos.
Ejemplo 5: Agrupar por Categoría
Explicación: Esta consulta agrupa las filas por la columna category
y suma los valores de sales
para cada grupo.
Uso de HAVING
La cláusula HAVING
se utiliza para filtrar grupos de resultados después de aplicar GROUP BY
.
Ejemplo 6: Filtrar Grupos con HAVING
SELECT category, SUM(sales) AS total_sales FROM `my_dataset.my_table` GROUP BY category HAVING total_sales > 1000;
Explicación: Esta consulta agrupa las filas por category
, suma los valores de sales
para cada grupo y luego filtra los grupos donde total_sales
es mayor que 1000.
Ejercicios Prácticos
Ejercicio 1: Contar Filas por Categoría
Instrucción: Escribe una consulta que cuente el número de filas para cada categoría en la tabla my_table
.
Solución:
Ejercicio 2: Calcular el Promedio de Ventas por Categoría
Instrucción: Escribe una consulta que calcule el promedio de ventas para cada categoría en la tabla my_table
.
Solución:
Ejercicio 3: Filtrar Categorías con Ventas Totales Mayores a 5000
Instrucción: Escribe una consulta que agrupe las filas por categoría, sume las ventas y filtre las categorías donde las ventas totales son mayores a 5000.
Solución:
SELECT category, SUM(sales) AS total_sales FROM `my_dataset.my_table` GROUP BY category HAVING total_sales > 5000;
Resumen
En esta sección, hemos cubierto las funciones de agregación básicas en SQL y cómo utilizarlas en BigQuery. Aprendiste a contar filas, sumar valores, calcular promedios, y encontrar valores mínimos y máximos. También exploramos cómo agrupar datos con GROUP BY
y filtrar grupos con HAVING
. Estos conceptos son fundamentales para analizar y resumir grandes conjuntos de datos de manera eficiente.
En el próximo módulo, profundizaremos en técnicas intermedias de SQL, como JOINS
y subconsultas, que te permitirán realizar análisis de datos más complejos.
Curso de BigQuery
Módulo 1: Introducción a BigQuery
- ¿Qué es BigQuery?
- Configuración de tu Entorno de BigQuery
- Entendiendo la Arquitectura de BigQuery
- Visión General de la Consola de BigQuery
Módulo 2: SQL Básico en BigQuery
Módulo 3: SQL Intermedio en BigQuery
Módulo 4: SQL Avanzado en BigQuery
- Joins Avanzados
- Campos Anidados y Repetidos
- Funciones Definidas por el Usuario (UDFs)
- Particionamiento y Agrupamiento
Módulo 5: Gestión de Datos en BigQuery
- Cargando Datos en BigQuery
- Exportando Datos desde BigQuery
- Transformación y Limpieza de Datos
- Gestión de Conjuntos de Datos y Tablas
Módulo 6: Optimización del Rendimiento de BigQuery
- Técnicas de Optimización de Consultas
- Entendiendo los Planes de Ejecución de Consultas
- Uso de Vistas Materializadas
- Optimización del Almacenamiento
Módulo 7: Seguridad y Cumplimiento en BigQuery
- Control de Acceso y Permisos
- Encriptación de Datos
- Auditoría y Monitoreo
- Cumplimiento y Mejores Prácticas
Módulo 8: Integración y Automatización de BigQuery
- Integración con Servicios de Google Cloud
- Uso de BigQuery con Dataflow
- Automatización de Flujos de Trabajo con Cloud Functions
- Programación de Consultas con Cloud Scheduler
Módulo 9: Machine Learning en BigQuery (BQML)
- Introducción a BigQuery ML
- Creación y Entrenamiento de Modelos
- Evaluación y Predicción con Modelos
- Características Avanzadas de BQML