La cláusula GROUP BY de PostgreSQL se usa para dividir las filas devueltas por la declaración SELECT en diferentes grupos. La especialidad de la cláusula GROUP BY es que se pueden usar funciones como SUM()
para calcular la suma de elementos o COUNT()
para obtener el número total de elementos en los grupos.
Syntax: SELECT column_1, column_2, computing_function(column_3) FROM table_name GROUP BY column_1, column_2;
Es importante tener en cuenta que la cláusula GROUP BY debe aparecer exactamente después de la cláusula FROM o WHERE .
Por el bien de este artículo, utilizaremos la base de datos de alquiler de DVD de muestra , que se explica aquí y se puede descargar haciendo clic en este enlace en nuestros ejemplos.
Ejemplo 1:
aquí buscaremos datos de la tabla de pagos y agruparemos el resultado por ID de cliente de la tabla de «pagos» de nuestra base de datos de muestra.
SELECT customer_id FROM payment GROUP BY customer_id;
Producción:
Ejemplo 2:
Aquí consultaremos para obtener el monto que cada cliente ha pagado hasta la fecha y usaremos una función agregada (es decir, SUM()), para hacerlo y los agruparemos por customer_id de la tabla de «pago» de la base de datos de muestra.
SELECT customer_id, SUM (amount) FROM payment GROUP BY customer_id;
Producción:
Ejemplo 3:
aquí haremos una consulta para contar la cantidad de transacciones de pago que cada empleado ha estado procesando, usted agrupa las filas en la tabla de pagos en función de staff_id y usa la función COUNT() para obtener la cantidad de transacciones.
SELECT staff_id, COUNT (payment_id) FROM payment GROUP BY staff_id;
Producción:
Publicación traducida automáticamente
Artículo escrito por RajuKumar19 y traducido por Barcelona Geeks. The original can be accessed here. Licence: CCBY-SA