Em um banco de dados Oracle 19c, aberto e funcionando em con...

Próximas questões
Com base no mesmo assunto
Q3290559 Banco de Dados
Em um banco de dados Oracle 19c, aberto e funcionando em condições ideais, existe uma tabela rprocessos com dados válidos, que tem a seguinte estrutura:

- id_processo (número único de identificação do processo)
- data_abertura (data em que o processo foi aberto)
- id_vara (identificador da vara do trabalho onde o processo tramita)
- valor_processo (valor monetário associado ao processo)

O comando SQL que lista 0 id_vara, O número total de processos por vara e o valor total dos processos, em ordem decrescente, somente das varas que possuem mais de 100 processos abertos antes de 1º de janeiro de 2020, é:  
Alternativas

Comentários

Veja os comentários dos nossos alunos

Selecionar, da tabela , as varas () que:

  1. Tenham processos abertos antes de 01/01/2020;
  2. Possuam mais de 100 processos;
  3. Mostrar quantidade de processos e soma de valores;
  4. Ordenar por valor total em ordem decrescente.

a) CORRETA

WHERE filtra apenas processos abertos antes de 2020.

GROUP BY agrupa por id_vara.

HAVING COUNT(*) > 100 aplica corretamente o filtro sobre agregação.

ORDER BY SUM(valor_processo) DESC ordena pelo valor total.

b) INCORRETA

Erro de ordem: HAVING deve vir antes de ORDER BY.

A cláusula HAVING pode ser usada para definir uma condição para um agrupamento com GROUP BY:

SELECT colunas FROM nome_da_tabela WHERE condição

GROUP BY coluna

HAVING condição;

Inválido em Oracle e na maioria dos SGBDs.

c) INCORRETA

data_abertura < '2020-JAN-01' é válida, mas menos clara do que o formato padrão ISO ('2020-01-01').

COUNT(valor_total) é inválido: valor_total é alias, não pode ser usado aqui.

❌ Erro na expressão do ORDER BY.

d) INCORRETA

Faltam dois filtros essenciais:

  • HAVING COUNT(*) > 100 não aparece.

valor_total é um alias, não pode ser usado diretamente em ORDER BY em alguns contextos (especialmente no Oracle).

❌ Não atende ao requisito de quantidade mínima de processos.

e) INCORRETA

Aplica o filtro errado: o enunciado exige COUNT(*) > 100, e não filtro por soma de valores.

❌ Lógica diferente da exigida.

Fonte: ChatGPT.

Clique para visualizar este comentário

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