A cláusula MYSQL GROUP BY é usada para coletar dados de vários registros e agrupar o resultado por uma ou mais colunas. Geralmente é usado em uma instrução SELECT.
Você também pode usar algumas funções agregadas como COUNT, SUM, MIN, MAX, AVG etc.
Sintaxe:
tente pegar em java
SELECT expression1, expression2, ... expression_n, aggregate_function (expression) FROM tables [WHERE conditions] GROUP BY expression1, expression2, ... expression_n;
Parâmetros
expressão1, expressão2, ... expressão_n: Especifica as expressões que não estão encapsuladas em uma função agregada e devem ser incluídas na cláusula GROUP BY.
função_agregada: Especifica uma função como SUM, COUNT, MIN, MAX ou AVG etc. tabelas: especifica as tabelas de onde você deseja recuperar os registros. Deve haver pelo menos uma tabela listada na cláusula FROM.
ONDE condições: É opcional. Especifica as condições que devem ser cumpridas para que os registros sejam selecionados.
(i) Cláusula MySQL GROUP BY com função COUNT
Considere uma tabela chamada tabela de 'oficiais', contendo os seguintes registros.
Agora, vamos contar o número repetitivo de cidades na coluna endereço.
Execute a seguinte consulta:
SELECT address, COUNT(*) FROM officers GROUP BY address;
Saída:
(ii) Cláusula MySQL GROUP BY com função SUM
Vamos pegar uma tabela 'funcionários', contendo os seguintes dados.
Agora, a consulta a seguir irá GROUP BY o exemplo usando a função SUM e retornará o emp_name e o total de horas de trabalho de cada funcionário.
Execute a seguinte consulta:
SELECT emp_name, SUM(working_hours) AS 'Total working hours' FROM employees GROUP BY emp_name;
Saída:
(iii) Cláusula MySQL GROUP BY com função MIN
O exemplo a seguir especifica as horas mínimas de trabalho dos funcionários da tabela 'empregados'.
Execute a seguinte consulta:
jvm em java
SELECT emp_name, MIN(working_hours) AS 'Minimum working hour' FROM employees GROUP BY emp_name;
Saída:
(iv) Cláusula MySQL GROUP BY com função MAX
O exemplo a seguir especifica as horas máximas de trabalho dos funcionários da tabela 'empregados'.
Execute a seguinte consulta:
SELECT emp_name, MAX (working_hours) AS 'Minimum working hour' FROM employees GROUP BY emp_name;
Saída:
(v) Cláusula MySQL GROUP BY com função AVG
O exemplo a seguir especifica a média de horas de trabalho dos funcionários da tabela 'empregados'.Execute a seguinte consulta:
SELECT emp_name, AVG(working_hours) AS 'Average working hour' FROM employees GROUP BY emp_name;
Saída: