FC ConcursosFC Concursos

Questão FC372848

Em uma instrução SQL, a cláusula GROUP BY, se utilizada juntamente com funções de grupo, deve estar em uma posição específica como

Linguagem SQL

FCC · 2019

Em uma instrução SQL, a cláusula GROUP BY, se utilizada juntamente com funções de grupo, deve estar em uma posição específica como

  1. SELECT coluna1 [, coluna2, ... ] . função_de_grupo, [ função_de_grupo, ...]

    FROM tabela

    ORDER BY coluna2

    GROUP BY coluna4 [, coluna5, ...]

    HAVING coluna5 > 10

    WHERE condição;

  2. SELECT coluna1 [, coluna2, ... ] . função_de_grupo, [ função_de_grupo, ...]

    FROM tabela

    WHERE condição

    ORDER BY coluna2

    GROUP BY coluna4 [, coluna5, ...]

    HAVING coluna5 > 10;

  3. SELECT coluna1 [, coluna2, ... ] . função_de_grupo, [ função_de_grupo, ...]

    FROM tabela

    WHERE condição

    GROUP BY coluna4 [, coluna5, ...]

    HAVING coluna5 > 10

    ORDER BY coluna2;

  4. SELECT coluna1 [, coluna2, ... ] . função_de_grupo, [ função_de_grupo, ...]

    FROM tabela

    HAVING coluna5 > 10

    ORDER BY coluna2

    WHERE condição

    GROUP BY coluna4 [, coluna5, ...] ;

  5. SELECT coluna1 [, coluna2, ... ] . função_de_grupo, [ função_de_grupo, ...]

    FROM tabela

    HAVING coluna5 > 10

    WHERE condição

    ORDER BY coluna2

    GROUP BY coluna4 [, coluna5, ...];

Mostrar resposta e comentário

Gabarito

Certo

Comentário do professor

A alternativa C apresenta a ordem correta das cláusulas em uma instrução SQL que usa funções de grupo: SELECT → FROM → WHERE → GROUP BY → HAVING → ORDER BY.

No SELECT você pode misturar colunas e funções de agregação, por exemplo \(AVG(nota)\). As funções de grupo calculam um valor por conjunto de linhas.

O GROUP BY deve aparecer após o WHERE e é responsável por agrupar as linhas segundo as colunas listadas (ex.: coluna4, coluna5), permitindo que as funções de agregação operem sobre cada grupo.

Colunas não agregadas presentes no SELECT precisam constar no GROUP BY. O HAVING aplica filtros aos grupos (condições sobre agregados) e vem depois do GROUP BY.

Por fim, o ORDER BY ordena o resultado final. Assim, a posição do GROUP BY na alternativa C está correta e é obrigatória quando se usa funções de grupo.

Conteúdo do catálogo FC Concursos · Atualizado em

Continue aprendendo