Uma Secretaria da Fazenda Estadual mantém atabela multas_tri...

Próximas questões
Com base no mesmo assunto
Q3502161 Banco de Dados

Uma Secretaria da Fazenda Estadual mantém atabela multas_tributarias com informações sobre multas aplicadas a contribuintes. A estrutura da tabela é apresentada a seguir:  


Imagem associada para resolução da questão


Devido a uma decisão judicial, todas as multas pendentes aplicadas antes de 2023 devem ter seu valor reduzido em 10%. Em um banco de dados aberto e em condições ideais, o comando SQL que realiza essa atualização é: 

Alternativas

Comentários

Veja os comentários dos nossos alunos

Para responder essa questão precisamos saber disso: → 100 * 0.9 = 90 redução de 10%.

A) Aumenta 90%, não reduz. ❌

B) Usa dentro de um UPDATE linha a linha. → Errado conceitualmente, é função de grupo, não funciona assim. ❌

C) Correto: reduz 10%. ✅

D) → Subtrai valor fixo de 10 (não percentual). ❌

E) → Afeta multas erradas. No caso 'paga', a questão não quer isso.❌

*0.9?

De cara já dá para eliminar (B), (D) e (E):

A) Multiplica por 1.9. Isso aumentaria a multa em 90%, em vez de reduzir.

B) Tenta usar AVG(valor_multa) (média) diretamente no UPDATE. Isso geralmente causa erro de sintaxe ou lógica (queremos a atualização do valor da própria linha, não substituir pela média geral).

D) O comando está escrito errado (UFDATE em vez de UPDATE);

Subtrai um valor fixo (- 10) em vez de uma porcentagem;

Compara uma data (DATE) com um número inteiro (2023), o que pode gerar erro dependendo do banco.

E) Filtra pelo status errado ('Paga') e tem erro de sintaxe na multiplicação (falta o * entre a coluna e o número 0.9).

C)

UPDATE multas_tributarias 

SET valor_multa = valor_multa * 0.9 

WHERE status = 'Pendente' AND data_aplicacao < '2023-01-01';

Se você quer tirar 10% de um valor, você deve manter 90% dele.

Matematicamente: Valor * (1 - 0.10) = Valor * 0.9.

valor_multa * 0.9

O enunciado pede apenas multas pendentes.

WHERE status = 'Pendente'

O enunciado pede multas anteriores a 2023.

AND data_aplicacao < '2023-01-01'

Qualquer data antes do primeiro dia de 2023 pertence a 2022 ou antes.

Clique para visualizar este comentário

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