Los datos expuestos en este blog, son solo de índole informativo. Por favor realiza siempre una copia de seguridad antes de realizar cualquier cambio en tu proyecto.
PostgreSQL: cláusula GROUP BY
Este tutorial de PostgreSQL explica cómo usar PostgreSQL Cláusula GROUP BY Con sintaxis y ejemplos.
describir
La cláusula GROUP BY de PostgreSQL se usa en una declaración SELECT para recopilar datos en varios registros y agrupar los resultados en una o más columnas.
sintaxis
La sintaxis de la cláusula GROUP BY en PostgreSQL es:
SELECT expression1, expression2, ... expression_n, aggregate_function (expression) FROM tables [WHERE conditions] GROUP BY expression1, expression2, ... expression_n;
parámetro o parámetro
expresión1, expresión2, … expresión_n Expresiones que no están encapsuladas en funciones agregadas y deben incluirse en la cláusula GROUP BY. Función_agregada Puede ser una función agregada, como una función de suma, conteo, mínimo, máximo o promedio. tabla La tabla de la que desea recuperar registros. Debe aparecer al menos una tabla en la cláusula FROM. La condición WHERE es opcional. Para seleccionar las condiciones que debe cumplir un registro.
Ejemplo: uso de la función de suma
Veamos un ejemplo de una consulta GROUP BY de PostgreSQL usando la función sum.
Este ejemplo de GROUP BY de PostgreSQL usa la función sum para devolver el nombre del departamento y el salario total (departamento).
SELECT department, sum(salary) AS "Salaries for department" FROM employees GROUP BY department;
Debido a que enumeró una columna (campo de departamento) en la declaración SELECT que no estaba encapsulada en la función de suma, debe usar la cláusula GROUP BY. Por lo tanto, el campo de departamento debe aparecer en la cláusula GROUP BY.
Ejemplo: uso de la función de conteo
Veamos cómo usar la cláusula GROUP BY con la función de conteo.
Este ejemplo de GROUP BY utiliza la función de recuento para devolver el departamento y la cantidad de empleados con un estado “activo” (para ese departamento).
SELECT department, count(*) AS "Number of employees" FROM employees WHERE status="Active" GROUP BY department;
Ejemplo: uso de la función min
A continuación, veamos cómo usar la cláusula GROUP BY con la función min.
Este ejemplo de GROUP BY usa la función min para devolver el nombre de cada departamento y el salario mínimo en ese departamento.
SELECT department, min(salary) AS "Lowest salary" FROM employees GROUP BY department;
Ejemplo: uso de la función max
Finalmente, veamos cómo usar la cláusula GROUP BY con la función max.
Este ejemplo de GROUP BY usa la función max para devolver el nombre de cada departamento y el salario más alto en el departamento.
SELECT department, max(salary) AS "Highest salary" FROM employees GROUP BY department;