FC ConcursosFC Concursos

Questão FC372905

Para saber o tempo de serviço de cada funcionário da sua equipe, um Analista de Sistemas deseja utilizar, em um banco de dados Oracle aberto e em condições ideais, um comando PL/SQ

Linguagem SQL

FCC · 2018

Para saber o tempo de serviço de cada funcionário da sua equipe, um Analista de Sistemas deseja utilizar, em um banco de dados Oracle aberto e em condições ideais, um comando PL/SQL para exibir o nome do funcionário (campo nome) e calcular o número de meses entre a data atual e a data em que o funcionário foi admitido (campo data_admissao), arredondando o número de meses para o valor inteiro mais próximo. Considerando que a tabela onde estão os dados chama-se funcionario, terá que utilizar o comando

  1. SELECT nome, ROUND(MONTHS_BETWEEN(DATE(), data_admissao)) FROM funcionario;
  2. SELECT nome, LPAD(MONTHS(SYSDATE,data_admissao)) FROM funcionario;
  3. SELECT nome, ROUND(MONTHS(DATE(),data_admissao)) FROM funcionario;
  4. SELECT nome, ROUND(SYSDATE() - data_admissao) FROM funcionario;
  5. SELECT nome, ROUND(MONTHS_BETWEEN(SYSDATE,data_admissao)) FROM funcionario;
Mostrar resposta e comentário

Gabarito

Errado

Comentário do professor

A alternativa correta usa corretamente as três funções necessárias: SYSDATE (data atual do banco), MONTHS_BETWEEN (diferença em meses entre duas datas) e ROUND (arredondamento ao inteiro mais próximo).

O trecho MONTHS_BETWEEN(SYSDATE, data_admissao) calcula o número de meses (pode ser fracionário) entre a data atual e a admissão. Note que a ordem dos argumentos é (data mais recente, data mais antiga), garantindo resultado positivo para funcionários admitidos no passado.

Em seguida, ROUND(...) converte esse valor fracionário para o inteiro mais próximo, conforme pedido (meses arredondados). Assim, a consulta completa é:

SELECT nome, ROUND(MONTHS_BETWEEN(SYSDATE,data_admissao)) FROM funcionario;

O retorno é o nome do funcionário e o tempo de serviço em meses, arredondado para o inteiro mais próximo.

Conteúdo do catálogo FC Concursos · Atualizado em

Continue aprendendo