Pular para o conteúdo principal

Questão de Banco de Dados — SQL — FCC 2016

Banco de DadosSQL
Código
fc033355
Banca
FCC
Órgão
TRT - 14ª Região (RO e AC)
Ano
2016
Nível
Superior
Cargo
Analista Judiciário - Tecnologia da Informação
Uma tabela de um banco de dados Oracle chamada funcionarios possui os campos id, nome e salario. Um Analista deseja realizar uma consulta nesta tabela, que exiba o id, o nome dos funcionários, o salário e o salário acrescido de 12,5%. O salário com o acréscimo deverá ser mostrado como um número inteiro e a coluna deverá ser nomeada Salário Reajustado. A instrução SQL que deverá ser digitada pelo Analista é
  1. ASELECT id, nome, salario, TO_INT(salario * 1.125,0) AS "Salário Reajustado" FROM funcionarios;
  2. BSELECT id, nome, salario, ARRED(salario * 1.125) AS "Salário Reajustado" FROM funcionarios;
  3. CSELECT id, nome, salario, ROUND(salario * 1.125, 0) "Salário Reajustado" FROM funcionarios;
  4. DSELECT id, nome, salario, TRUNC(salario * 1.125) 'Salário Reajustado' FROM funcionarios;
  5. ESELECT id, nome, salario, TO_INTEGER(salario * 1.125) AS "Salário Reajustado" FROM funcionarios;
Revelar gabarito e comentário

GabaritoC — SELECT id, nome, salario, ROUND(salario * 1.125, 0) "Salário Reajustado" FROM funcionarios;

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”.

Oracle SQL - Funções de arredondamento e formatação

Gabarito: letra C. A função ROUND(salario * 1.125, 0) arredonda o valor para zero casas decimais, resultando em número inteiro, e a sintaxe do alias sem AS é aceita no Oracle. As demais alternativas usam funções inexistentes (TO_INT, ARRED, TO_INTEGER) ou sintaxe inválida (TRUNC não arredonda, aspas simples).

Alternativa A — ❌ Incorreta

TO_INT não é uma função válida no Oracle. A função correta para arredondamento é ROUND. Além disso, a sintaxe TO_INT(salario * 1.125, 0) passaria dois argumentos, mas TO_INT inexistente.

Alternativa B — ❌ Incorreta

ARRED não é uma função do Oracle. O nome correto da função de arredondamento é ROUND.

Alternativa C — ✅ Correta ⟵ GABARITO

ROUND(salario * 1.125, 0) arredonda o produto para zero casas decimais, retornando um número inteiro. O alias "Salário Reajustado" é válido (com aspas duplas) e o AS é opcional no Oracle.

Alternativa D — ❌ Incorreta

TRUNC trunca, não arredonda. Para o valor desejado (acréscimo de 12,5% e inteiro), é necessário arredondar. Além disso, o alias foi definido com aspas simples 'Salário Reajustado', o que é inválido no Oracle — devem ser usadas aspas duplas ou nenhuma.

Alternativa E — ❌ Incorreta

TO_INTEGER não é uma função do Oracle. A função correta para converter para inteiro com arredondamento é ROUND(..., 0).

Gabarito: letra C.

Link permanente: /questoes/fc033355