Questão de Banco de Dados — Consultas e Comandos em SQL — FCC 2026
Banco de Dados›Consultas e Comandos em SQL
Código
fc142240
Banca
FCC
Órgão
MPE AP
Ano
2026
Cargo
Ana Min ( )
Um Ministério Público mantém uma tabela processos em um banco de dados MySQL aberto e em condições ideais, com as colunas id (PK), descricao e valor_causa. A equipe deseja atualizar os registros para que todos os processos com valor da causa inferior a 30000 reais tenham o valor aumentado em 10%, em virtude de uma reavaliação. O comando SQL que realiza essa atualização corretamente é UPDATE processos SET
Avalor_causa = valor_causa * 1.10 TO valor_causa < 30000;
Bvalor_causa = valor_causa + 10% WHERE valor_causa < 30000;
Cvalor_causa = valor_causa * 1.10 WHERE valor_causa < 30000;
Dvalor_causa = valor_causa * 10% TO valor_causa < 30000;
Evalor_causa += valor_causa * 0.10 WHERE valor_causa < 30000;
Comentário gerado por IA. É um apoio ao estudo, ancorado em fontes, mas pode conter imprecisões — confira sempre na fonte oficial (lei, súmula, edital e gabarito da banca). Encontrou um erro? Use “Reportar”.
Comando UPDATE no MySQL: sintaxe e operadores aritméticos
Gabarito: letra C. O comando UPDATE no MySQL segue a estrutura UPDATE tabela SET coluna = expressão WHERE condição, e o aumento de 10% sobre o valor atual é feito pela expressão valor_causa = valor_causa * 1.10 — multiplicar por 1,10 equivale a somar 10% ao valor original. A alternativa C é a única que combina corretamente a cláusula SET (implícita no enunciado), a expressão aritmética válida e a cláusula WHERE com a condição pedida.
O comando UPDATE é um dos comandos DML (Data Manipulation Language) do SQL, responsável por alterar dados já existentes em uma tabela. Sua sintaxe básica é:
UPDATE nome_da_tabela
SET coluna1 = valor1, coluna2 = valor2, ...
WHERE condição;
A cláusula SET define quais colunas serão alteradas e qual o novo valor (que pode ser uma expressão aritmética, como valor_causa * 1.10). A cláusula WHERE é opcional, mas essencial quando se deseja atualizar apenas um subconjunto de registros — sem ela, todos os registros da tabela seriam alterados. No caso, a condição é valor_causa < 30000, que seleciona exatamente os processos com valor da causa inferior a 30.000 reais.
O aumento de 10% sobre um valor pode ser expresso de duas formas matematicamente equivalentes:
Multiplicar por 1,10: valor_causa * 1.10 (o valor original + 10% dele);
Somar 10% do valor: valor_causa + (valor_causa * 0.10).
A primeira forma é a mais direta e a que aparece na alternativa correta. É importante notar que o MySQL não aceita a sintaxe valor_causa += valor_causa * 0.10 (operador de atribuição composta, comum em linguagens de programação, mas não em SQL), nem valor_causa = valor_causa + 10% (o símbolo % não é um operador aritmético válido em SQL para esse fim).
A pegadinha central desta questão é a banca misturar sintaxes de outras linguagens (como TO no lugar de WHERE, ou += no lugar de =) e operadores inválidos (10% como se fosse um valor numérico) com a sintaxe correta do SQL. O candidato que conhece a estrutura do UPDATE e os operadores aritméticos do SQL elimina as alternativas erradas rapidamente.
Guarde a estrutura canônica do UPDATE — UPDATE tabela SET coluna = expressão WHERE condição — e a equivalência entre * 1.10 e + 10%: é exatamente nesses dois pontos que as alternativas se dividem.
1UPDATE tabela
2SET coluna = expressão
3WHERE condição
LEVEL · soulevel.com.br
Alternativa A — ❌ Incorreta
Usa a palavra TO no lugar de WHERE. Em SQL, a cláusula de filtro é sempre WHERE; TO não existe nesse contexto (é uma palavra usada em outras linguagens, como em FOR ... TO ...). Além disso, a expressão valor_causa * 1.10 está correta, mas a cláusula errada invalida o comando.
Alternativa B — ❌ Incorreta
A expressão valor_causa + 10% é inválida em SQL. O símbolo % não é um operador aritmético de porcentagem — em SQL, % é o operador de módulo (resto da divisão inteira). Para aumentar 10%, seria necessário valor_causa * 1.10 ou valor_causa + (valor_causa * 0.10). A cláusula WHERE está correta, mas a expressão de atribuição está errada.
Alternativa C — ✅ Correta ⟵ GABARITO
Apresenta exatamente a sintaxe correta: valor_causa = valor_causa * 1.10 (aumento de 10% sobre o valor atual) e WHERE valor_causa < 30000 (filtro para os processos com valor inferior a 30.000). A multiplicação por 1,10 é a forma canônica de aplicar um acréscimo percentual em SQL.
Alternativa D — ❌ Incorreta
Dois erros: usa TO no lugar de WHERE (mesmo problema da alternativa A) e a expressão valor_causa * 10% é inválida — % não é operador de porcentagem em SQL. Mesmo que fosse, multiplicar por 10% (0,10) reduziria o valor para 10% do original, não aumentaria em 10%.
Alternativa E — ❌ Incorreta
Usa o operador +=, que é de atribuição composta de linguagens de programação (como C, Java, Python), mas não existe em SQL. Em SQL, a atribuição é sempre feita com = simples. A expressão valor_causa += valor_causa * 0.10 seria rejeitada pelo MySQL. A cláusula WHERE está correta, mas a sintaxe de atribuição está errada.
NÃO CAIA NESSA!
A banca mistura sintaxes de outras linguagens com a do SQL. O TO (alternativas A e D) vem de linguagens como Pascal ou do comando SELECT ... INTO; o += (alternativa E) vem de C/Java/Python; e o 10% (alternativas B e D) parece intuitivo, mas % em SQL é o operador de módulo, não de porcentagem. Reconhecer a estrutura canônica UPDATE tabela SET coluna = expressão WHERE condição elimina todas as erradas de uma vez.
PEGA ESSA DICA!
Para aumentar um valor em X% em SQL, multiplique por 1 + X/100. Para diminuir, multiplique por 1 - X/100. Exemplos: aumentar 10% → * 1.10; diminuir 20% → * 0.80. Essa equivalência resolve qualquer questão de reajuste percentual em SQL.
Gabarito: letra C — a única que combina a expressão aritmética correta (valor_causa * 1.10) com a cláusula de filtro correta (WHERE valor_causa < 30000).