logo

Cláusula GROUP BY do MySQL

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.

Grupo MySQL pela cláusula 1

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:

Grupo MySQL pela cláusula 2

(ii) Cláusula MySQL GROUP BY com função SUM

Vamos pegar uma tabela 'funcionários', contendo os seguintes dados.

Grupo MySQL pela cláusula 3

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:

Grupo MySQL pela cláusula 4

(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:

Grupo MySQL pela cláusula 5

(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:

Grupo MySQL pela cláusula 6

(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:

Grupo MySQL pela cláusula 7