Considere que o Tribunal Regional do Trabalho possua em se...

Próximas questões
Com base no mesmo assunto
Q566708 Banco de Dados
Considere que o Tribunal Regional do Trabalho possua em seu Banco de Dados a tabela Tab_Processos descrita abaixo. Imagem associada para resolução da questão
Considere que, após uma consulta, foi produzido o seguinte resultado: Nro_Proc
1234567-80.2010.5.04.0000
7777777-70.2011.5.04.0000

SUM(Custas_Proc)
1072500.00
3200000.00

O comando SQL utilizado para obter o resultado acima é:
Alternativas

Gabarito comentado

Confira o gabarito comentado por um dos nossos professores

Alternativa Correta: E

Para resolver esta questão é necessário compreender o funcionamento do comando SELECT no SQL, o uso de funções de agregação como SUM(), o emprego de GROUP BY para agrupar resultados por um ou mais campos e a cláusula HAVING para aplicar condições aos grupos criados por GROUP BY, diferentemente da cláusula WHERE que se aplica a linhas individuais.

A alternativa E é correta porque utiliza adequadamente o comando SELECT para selecionar duas colunas: Nro_Proc e a soma das custas processuais SUM(Custas_Proc). Utiliza o GROUP BY para agrupar os resultados pelo número do processo, o que é uma exigência quando se usa funções de agregação para retornar valores não-agregados. Além disso, emprega a cláusula HAVING após o GROUP BY para filtrar apenas os grupos que possuem uma soma de custas processuais maior que 1.000.000,00, o que é coerente com os resultados apresentados na questão.

A sintaxe final que corresponde à lógica correta é a seguinte:

SELECT Nro_Proc, SUM(Custas_Proc)
FROM Tab_Processos
GROUP BY Nro_Proc
HAVING SUM(Custas_Proc) > 1000000.00;

Essa consulta SQL retorna exatamente o resultado apresentado na questão, já que considera apenas os processos cujas custas acumuladas superam o valor estipulado, cumprindo assim os requisitos do problema proposto.

Clique para visualizar este gabarito

Visualize o gabarito desta questão clicando no botão abaixo

Comentários

Veja os comentários dos nossos alunos

Quando é utilizada uma função agregada (SUM) e no comando SELECT houver a presença de outra coluna que não utilize função agregada, então deve ser utilizado o GROUP BY para somar todas as ocorrências de cada tipo da coluna. Havendo o GROUP BY, caso seja necessária uma filtragem do conjunto de dados, então a cláusula HAVING deve ser utilizada.

Letra: E

Somente esta alternativa tem a saída esperada. Não precisa nem analisar o restante >>> SELECT Nro_Proc, SUM(Custas_Proc)

Lendo a questão direito, reparei que na tabela Cust_proc, o valor que aparece lá não é 1.072.500,00 e sim, 172.500,00, logo, nenhuma dessas alternativas seria valida, porque se filtrar por valores acima de 1.000.000 só deveria aparecer um processo e não dois, correto???

A questão seria anulada?

Daniela, 1.072500.00 é a soma dos custos do processo 1234567-80.2010.5.04.0000 .

O resultado exibe SUM(Custas_Proc). Logo 172.500,00 +  900000,00 = 1.072500.00

Exato Alessio, realmente uma pegadinha com o valor 1072500.00 que é a soma do processo 1234567-80.2010.5.04.0000;

Clique para visualizar este comentário

Visualize os comentários desta questão clicando no botão abaixo