O que é group by na prática?
O que é group by na prática?
Olá, tudo bem?
O GROUP BY é a cláusula utilizada para agrupar os registros que estão sendo agregados, ou seja, ele determina como os registros serão retornados. Utilizamos o GROUP BY quando estamos utilizando uma função de agregação(SUM, MAX, AVG..), então precisamos especificar no GROUP BY por quais campos queremos realizar o agrupamento dos registros que estão sendo agregados.
Por exemplo, um grupo de registros está sendo agregado através da soma e agrupados pelo ano, então eles serão somados e rotornado o valor dos registros para cada ano existente no banco de dados. Vou utilizar um exemplo mais real: Uma empresa gostaria de saber a quantidade de notas emitidas por ano.
Então, precisariamos realizar a contagem destas notas e em seguida realizar o agrupamento delas por ano. Para isso, utilizamos a função de agragação COUNT para realizar a contageme e o GROUP BY para realizar o agrupamento por ano:
SELECT COUNT(NUMERO) as Notas, EXTRACT(YEAR FROM DATA_VENDA) AS ANO, FROM `curso-big-query-2208.sucos_vendas.notas_fiscais` GROUP BY ANO;
Espero ter ajudado, qualquer nova dúvida é só falar e bons estudos!