A cláusula GROUP BY no Access combina registros com valores idênticos da lista de campos especificada em um único registro. Um valor de resumo é criado para cada registro se você inclui uma função de agregação SQL, como Soma ou Contagem, na instrução SELECT.
Sintaxe
SELECT listacampos
FROM tabela WHERE critérios [GROUP BY listacamposgrupo]Uma instrução SELECT contendo uma cláusula GROUP BY tem estas partes:
Parte |
Descrição |
listacampos |
O nome do campo ou dos campos a serem recuperados junto com qualquer alias de nome de campo, funções agregadas, predicados de seleção (ALL, DISTINCT, DISTINCTROW ou TOP) ou outras opções de instrução SELECT. |
tabela |
O nome da tabela da qual os registros são recuperados. |
critérios |
Critérios de seleção. Se a instrução inclui uma cláusula WHERE, o mecanismo de banco de dados do Microsoft Access agrupa os valores após aplicar as condições WHERE aos registros. |
listacamposgrupo |
Os nomes de até 10 campos usados para agrupar os registros. A ordem dos nomes dos campos em listacamposgrupo determina os níveis de agrupamento do mais alto para o mais baixo. |
Comentários
GROUP BY é opcional.
Os valores de resumo são omitidos se não há função de agregação SQL na instrução SELECT.
Os valores Null em campos GROUP BY são agrupados e não são omitidos. Porém, os valores Null não são avaliados em nenhuma função de agregação SQL.
Use a cláusula WHERE para excluir as linhas que você não quer que sejam agrupadas e use a cláusula HAVING para filtrar os registros após terem sido agrupados.
A menos que contenha dados de Memorando ou Objeto OLE, um campo da lista de campos GROUP BY pode se referir a qualquer campo em qualquer tabela listada na cláusula FROM, mesmo se o campo não estiver incluído na instrução SELECT, contanto que a instrução SELECT inclua pelo menos uma função de agregação SQL. O mecanismo de banco de dados do Microsoft Access não pode agrupar em campos de Memorando ou Objeto OLE.
Todos os campos da lista de campos SELECT devem ser incluídos na cláusula GROUP BY ou ser incluídos como argumentos para uma função de agregação SQL.