Usando funções agregadas do MySQL com grupo por

Usando funções agregadas do MySQL com grupo por
Normalmente, a instrução SELECT é usada para recuperar todos os registros correspondentes de uma ou mais tabelas com base nas diferentes cláusulas usadas na declaração. Mas às vezes precisamos do tipo de dados resumidos das tabelas com base em qualquer campo e função agregada é usada para fazer esse tipo de tarefa. Por exemplo, quando qualquer empresa precisar do relatório de vendas mensal, o valor das vendas precisará ser adicionado com base no valor das vendas de cada mês para gerar o relatório. Muitas funções agregadas existem no MySQL para realizar diferentes tipos de tarefas de resumo. Geralmente, o grupo por cláusula é usado com cada função agregada. As funções de diferentes funções agregadas do MySQL e os usos de algumas funções agregadas comuns são mostradas neste artigo usando tabelas de banco de dados MySQL de duas amostras.

Sintaxe:

Selecione Field1, Fields2,…, Fieldn, agregate_function (Fieldx)
Da tabela
Onde condições
Grupo por Field1, Field2,… ,, Fieldn;

Aqui, o valor resumido de Fieldx A coluna será calculada com base nas colunas mencionadas no grupo por cláusula.

Lista de funções agregadas do MySQL:

Função agregada Descrição
CONTAR() É usado para contar o número total de linhas retornadas.
Contagem (distinta) É usado para contar o número total de linhas exclusivas retornadas.
SOMA() É usado para calcular a soma de qualquer valores numéricos de campo.
Max () É usado para descobrir o valor máximo de um campo.
Min () É usado para descobrir o valor mínimo de um campo.
AVG () É usado para descobrir o valor médio de um campo.
Bit_or () É usado para retornar em termos de bit ou valor de um campo.
Bit_and () É usado para retornar em termos de bit e valor de um campo.
Bit_xor () É usado para retornar o valor XOR de um campo de um campo.
Group_concat () É usado para retornar o valor concatenado de um campo.
Json_arrayagg () É usado para devolver uma matriz JSON de um valor de campo.
Json_objectagg () É usado para devolver um objeto JSON de um valor de campo.
Std () É usado para devolver o desvio padrão da população.
Stddev () É usado para devolver o desvio padrão da população.
Stddev_pop () É usado para devolver o desvio padrão da população.
Stddev_samp () É usado para devolver o desvio padrão da amostra.
Var_pop () É usado para devolver a variação padrão da população.
Var_samp () É usado para retornar a variação da amostra.
Variação () É usado para devolver a variação padrão da população.

Crie duas tabelas relacionadas nomeadas vendedor e vendas Ao executar as seguintes declarações de criação. Essas duas tabelas estão relacionadas por eu ia Campo de vendedor mesa e vendedor_id Campo de vendas mesa.

Crie o vendedor de mesa (
ID Int (5) Auto_increment Primária Chave,
Nome Varchar (50) não nulo,
celular_no varchar (50) não nulo,
área varchar (50) não nula,
email varchar (50) não nulo) mecanismo = innodb;
Crie vendas de tabela (
ID Int (11) Auto_increment Primária Chave
Data de Sales_date,
vendedor_id int (5) não nulo,
Valor int (11),
Chave estrangeira (vendedor_id) Referências vendedor (ID))
Motor = innodb;
# Insira alguns registros em ambas as tabelas executando as seguintes declarações de inserção.
Insira os valores do vendedor
(Null, 'Jony', '0176753325', 'California', '[email protected] '),
(Null, 'Janifer', '0178393995', 'Texas', '[email protected] '),
(Null, 'Jubair', '01846352443', 'Florida', '[email protected] '),
(Null, 'Albert', '01640000344', 'Texas', '[email protected] ');
Insira os valores de vendas
(NULL, '2020-02-11', 1, 10000),
(NULL, '2020-02-23', 3, 15000),
(NULL, '2020-03-06', 4, 7000),
(NULL, '2020-03-16', 2, 9000),
(NULL, '2020-03-23', 3, 15000),
(NULL, '2020-03-25', 4, 7000),
(NULL, '2020-03-27', 2, 8000),
(NULL, '2020-03-28', 4, 5000),
(NULL, '2020-03-29', 2, 3000),
(NULL, '2020-03-30', 3, 7000);

Agora, execute as seguintes declarações para verificar os registros de ambos vendedor e vendas mesas.

Selecione * do vendedor; Selecione * a partir de vendas;

Os usos de algumas funções agregadas comumente usadas são mostradas na próxima parte deste artigo.

Uso da função count ():

A tabela de vendedores contém informações de vendedor de área. Se você quiser saber o número total de vendedor em cada área, a seguinte instrução SQL pode ser usada. Ele contará o número total de vendedores de vendedor Grupo de mesa por área.

Selecione área como cidade, contagem (*) como 'total de vendas'
Do vendedor
Grupo por área;

A saída a seguir aparecerá de acordo com os dados da tabela.

Uso de Sum () Função:

Quando é necessário saber o valor total das vendas de cada vendedor, a seguinte instrução SQL pode ser usada para descobrir o valor total das vendas com o nome de cada vendedor vendedor e vendas tabela usando sum () função. 'vendedor_id' de vendas A tabela é usada aqui para agrupar.

Selecione o vendedor.nome, soma (valor) como 'vendas totais'
Do vendedor, vendas
Onde vendedor.id = vendas.vendedor_id
Grupo por vendas.vendedor_id;

A saída a seguir aparecerá após a execução da declaração acima. Existem quatro vendedores em vendedor A tabela e a saída mostram as vendas totais quantia Para cada vendedor.

Uso da função max ():

Quando é necessário descobrir as vendas máximas mensais com base em cada vendedor, a seguinte instrução SQL pode ser usada para obter a saída. Aqui, a função Month () é usada para identificar cada mês e a função max () é usada para descobrir o valor máximo da quantidade de cada mês a partir de vendas mesa.

Selecione o mês (vendas.Sales_date) no mês, max (valor) como 'vendas máximas',
vendedor.nome como 'vendedora'
Do vendedor, vendas
Onde vendedor.id = vendas.vendedor_id
Grupo por mês (vendas.Sales_date), vendedor.nome ;

A saída a seguir aparecerá após a execução da declaração.

Uso da função group_concat ():

Quando precisará descobrir o valor total das vendas com base em cada mês, mencionando cada valor de vendas exclusivo de cada mês, a seguinte instrução SQL pode ser usada. Aqui, o mês () da função é usado para ler valores mensais do valor de vendas com base no Sales_date e a função group_concat () é usada para contar o valor das vendas mensais.

Selecione o mês (vendas.Sales_date) como mês, group_concat (valor) como vendas,
Soma (valor) como 'vendas totais'
Do grupo de vendas por mês (vendas.sales_date);

A saída a seguir aparecerá após a execução da declaração.

Conclusão:

Funções agregadas ajudam os usuários do MySQL a descobrir os diferentes tipos de dados de resumo facilmente, escrevendo uma consulta simples. Os usos de quatro funções agregadas úteis são explicadas neste artigo para ajudar os leitores a saber como as funções agregadas usadas no MySQL.