Skip to content
Skip to content
Menu
Info Cafe
Info Cafe

Cláusula de GRUPO POR e TENDO em SQL

By admin on Fevereiro 4, 2021

Um componente importante para o Analista resumir os dados tais como vendas, lucro, custo, e salário. O resumo dos dados é muito útil para o Analista criar uma visualização, concluir os resultados, e redigir relatórios. Em SQL, GROUP BY Clause é uma das ferramentas para resumir ou agregar as séries de dados. Por exemplo, resumir as vendas diárias e combiná-las num único trimestre e mostrá-las aos quadros superiores. Da mesma forma, se quiser contar quantos empregados em cada departamento da empresa. Agrupa as bases de dados com base em uma ou mais colunas e agrega os resultados.

Após agrupar os dados, pode filtrar o registo agrupado usando a Cláusula HAVING. A Cláusula HAVING devolve os registos agrupados que correspondem à condição dada. Também é possível ordenar os registos agrupados usando ORDER BY. PEDIDO POR, utilizado após GROUP BY na coluna agregada.

Neste tutorial, vai aprender GRUPO POR Cláusula em detalhe com exemplos relevantes. Aqui está a lista de tópicos que irá aprender neste tutorial:

  • Grupo Por Cláusula
  • Cláusula de Salvamento
  • Funções Agregadas
  • Comparar Tendo e Onde Cláusula em SQL
  • GRUPO POR Exemplo de Junção
  • GROUPO POR Comparação com outras Cláusulas
  • Mãos-on Practice Assignment
  • Conclusion

Group By Clause

O GRUPO POR Cláusula é utilizado em SQL com a instrução SELECT para organizar dados semelhantes em grupos. Combina os múltiplos registos em uma ou mais colunas, utilizando algumas funções. Geralmente, estas funções são funções agregadas tais como min(),max(),avg(), count(), e sum() para combinar em colunas simples ou múltiplas. Utiliza a estratégia split-apply-combine para a análise de dados.

  • No split phase, divide os grupos com os seus valores.
  • No apply phase, Ele aplica a função agregada e gera um único valor.
  • No combiner phase, Ele combina os grupos com valores únicos num único valor.


Image source

Pontos a Recordar:

  • GROUPO POR Cláusula é utilizado com a declaração SELECT.
  • GROUP BY agrega os resultados com base na coluna seleccionada: COUNT, MAX, MIN, SUM, AVG, etc.
  • li>GROUP BY retorna apenas um resultado por grupo de dados.li>GROUP BY Clause segue sempre a cláusula WHERE.li>GROUP BY Clause precede sempre a cláusula ORDER BY(http://slideplayer.com/slide/15440670/).

No exemplo acima, a Tabela é agrupada com base na coluna DeptID e o Salário é agregado por departamento.

Having Clause

HAVING Clause utilizada em SQL como uma cláusula condicional com GROUP BY Clause. Esta cláusula condicional retorna linhas em que os resultados da função agregada só coincidem com determinadas condições. Foi adicionada no SQL porque a cláusula WHERE não pode ser combinada com resultados agregados, pelo que tem um propósito diferente. A finalidade principal da cláusula WHERE é lidar com registos não agregados ou individuais.

  • HAVING Clause sempre utilizada em combinação com GROUP BY Clause.
  • HAVING Clause restringe os dados nos registos do grupo em vez de registos individuais.
  • li>WHERE e HAVING podem ser utilizados numa única consulta.

No exemplo acima, a tabela é agrupada com base na coluna DeptID e estas linhas agrupadas filtradas usando a cláusula HAVING com a condição AVG(Salary) > 3000.

Funções agregadas

Funções agregadas utilizadas para combinar o resultado de um grupo num único como COUNT, MAX, MIN, AVG, SUM, STDDEV, e VARIANCE. Estas funções também conhecidas como funções de múltiplas linhas.

  • SUM(): Retorna a soma ou total de cada grupo.
  • COUNT(): Devolve o número de linhas de cada grupo.
  • AVG(): Retorna a média e a média de cada grupo.
  • MIN(): Devolve o valor mínimo de cada grupo.
  • MAX(): Retorna o valor mínimo de cada grupo.

Compare Tendo e Onde Cláusula em SQL

  • Em alguns casos, é necessário filtrar os registos individuais. Nesses casos, pode usar a cláusula WHERE, enquanto noutros casos precisa de filtrar os grupos com a condição específica. Nesses casos, pode usar a Cláusula HAVING.
  • AQUI>A Cláusula filtra os registos tuple por tuple enquanto a Cláusula HAVING filtra todo o grupo.
  • Uma consulta pode ter tanto as cláusulas( WHERE e HAVING Clause).
  • Where Clause applied first and then Have Clause.
  • AQUI A Cláusula restringe registos antes da Cláusula GRUPO POR GRUPO, enquanto que a Cláusula HAVING restringe grupos após a realização da Cláusula GRUPO POR GRUPO.
  • AQUI A Cláusula pode ser utilizada com SELECT, UPDATE, DELETE, e INSERT, enquanto que a Cláusula HAVING só pode ser utilizada com a declaração SELECT.


Image Source

GROUP BY With JOIN Example

A base de dados relacional normalizada decompõe a tabela complexa em pequenas tabelas, o que o ajuda a eliminar a redundância de dados, a inconsistência e a garantir que não há perda de informação. As tabelas normalizadas requerem a junção de dados de múltiplas tabelas.

No exemplo acima, Empregado e Departamento são unidos utilizando a coluna comum DeptID.

No exemplo acima, Juntar e GRUPO POR ambas as cláusulas utilizadas em conjunto numa única consulta. Após juntar ambas as tabelas (Empregado e Departamento), junta-se tabela agrupada pelo nome do Departamento.

GROUP BY Comparação com Outra Cláusula

Compare GROUP BY e DISTINCT

DISTINCT retorna os valores únicos presentes na coluna enquanto GROUP BY retorna itens únicos/distintos com a coluna resultante agregada. No exemplo seguinte é possível ver os valores DISTINCT na tabela dept.

Compare GROUP BY e ORDER BY

ORDER BY devolve itens classificados em ordem ascendente e descendente enquanto que GROUP BY devolve itens únicos com a coluna resultante agregada. No exemplo seguinte, pode ver a tabela de ordenados ORDER BY ou ordenados por ordem.

Prática de Atribuição de Práticas Práticas Práticas

Nome da Mesa: Livros

Colunas: ISBN, Título, Data de publicação, Preço, Editora

Escrever consultas SQL para as seguintes afirmações e partilhar as suas respostas nos comentários:

  1. Determinar quantos livros estão em cada categoria.
  2. Determinar quantos livros estão na categoria Gestão.
  3. Determinar o preço médio do livro de cada categoria.
  4. Lista o preço do livro mais barato em cada categoria.

Fonte: Esta atribuição é inspirada no livro “Oracle 11g SQL” de John Casteel.

Conclusion

Congratulações, chegou ao fim deste tutorial!

Neste tutorial, cobriu muitos detalhes sobre a Cláusula “GRUPO POR e TENDO”. Aprendeu o que é a Cláusula “GROUP BY and HAVING” com exemplos, Comparação entre a Cláusula “HAVING” e “WHERE” em SQL, GROUP BY com JOIN, e GROUP BY Comparação com DISTINCT e ORDER BY. Na última secção, tem uma tarefa prática de HAVING para avaliar os seus conhecimentos.

Esperativamente, pode agora utilizar o conceito de GROUP BY e HAVING Clause para analisar os seus próprios conjuntos de dados. Obrigado por ler este tutorial!

Se estiver interessado em aprender mais sobre SQL, faça o curso SQL Intermediário de DataCamp.

Navegação de artigos

7 Razões importantes para incluir a Jackfruit (Kathhal) na sua dieta regular!
Duramax vs. Cummins vs. Power Stroke – Quais são as Diferenças?

Deixe uma resposta Cancelar resposta

O seu endereço de email não será publicado. Campos obrigatórios marcados com *

Artigos recentes

  • Firebush (Português)
  • Previsão da taxa de CD para 2021: As taxas manter-se-ão provavelmente baixas, mas poderão aumentar mais tarde no ano
  • Como estruturar a documentação do sistema de gestão da qualidade
  • Dor pélvica crónica e prostatite: sintomas, diagnóstico e tratamento
  • Mixed Berry Crisp (Português)
  • Wheat Ales (Americana)
  • Os benefícios da amamentação após um ano
  • É seguro despejar café moído na pia | Canalização atómica
  • Cool-Down After Your Workout
  • Our Work

Meta

  • Iniciar sessão
  • Feed de entradas
  • Feed de comentários
  • WordPress.org

Arquivo

  • Março 2021
  • Fevereiro 2021
  • Janeiro 2021
  • Dezembro 2020
  • DeutschDeutsch
  • NederlandsNederlands
  • EspañolEspañol
  • FrançaisFrançais
  • PortuguêsPortuguês
  • ItalianoItaliano
  • PolskiPolski
  • 日本語日本語
©2021 Info Cafe | WordPress Theme by SuperbThemes.com