Analisando a consulta SQL apresentada a seguir, é correto afirmar:
-
SELECT f.nome, SUM(p.valor)
FROM funcionario f INNER JOIN premio p ON
f.id = p.id func
WHERE SUM(p.valor) > 4000
GROUP BY f.id
essa consulta está incorreta, uma vez que não é possível utilizar função de grupo na cláusula WHERE.
essa consulta está incorreta, e para corrigir, bastaria trocar a ordem das cláusulas GROUP BY e WHERE.
essa consulta está correta e retornará para cada funcionário, a soma dos seus prêmios.
apesar de funcionar na maioria dos SGBDs, essa consulta poderia ser otimizada através da utilização da cláusula HAVING.
apesar de executar, a consulta está incorreta e não retorna o que era esperado, isto é, a soma de prêmios de cada funcionário.