Como usar a função TRUNC no Oracle para arredondar números e datetime

Neste tutorial, aprenderemos  a utilizar a função trunc do banco de dados Oracle passo a passo.

Se você trabalha com banco de dados Oracle, provavelmente já precisou arredondar números ou valores de data e hora em suas consultas SQL. Para isso, o Oracle nos fornece a função TRUNC, que permite que você arredonde valores numéricos e de data e hora de maneira precisa e controlada.

Como usar a função TRUNC no Oracle para arredondar números e datetime
Como usar a função TRUNC no Oracle para arredondar números e datetime

Para arredondar um número com a função TRUNC, basta especificar o número e o número de dígitos para o qual deseja arredondar. Por exemplo:

SELECT TRUNC(124.456, 2) FROM dual;

Neste exemplo, estamos arredondando o número 124.456 para duas casas decimais, resultando em 124.45. Você também pode usar a função TRUNC com números negativos para arredondar para dígitos mais à esquerda.

Por exemplo:

SELECT TRUNC(124456, -2) FROM dual;

Neste caso, estamos arredondando o número 124456 para duas casas à esquerda, resultando em 124500.

Além de arredondar números, o TRUNC também pode ser usado para arredondar valores de data e hora. Por exemplo:

SELECT TRUNC(SYSDATE, 'YEAR') FROM dual;

Neste exemplo, estamos arredondando a data atual para o início do ano. Isso pode ser útil para remover a parte da hora e do minuto de um valor de data e hora.

Outras opções de unidade de tempo que podem ser usadas com a função TRUNC incluem:

  • MONTH: arredonda para o início do mês
  • DAY: arredonda para o início do dia
  • HOUR: arredonda para o início da hora
  • MINUTE: arredonda para o início do minuto

Outros Exemplos de Uso do TRUNC no Oracle

Arredondar um valor de data e hora para o início do mês : trunc : Oracle

SELECT TRUNC(data_hora, 'MONTH') FROM agenda;

Arredondar um valor numérico para duas casas decimais : trunc : Oracle

SELECT TRUNC(valor_pedido, 2) FROM tbl_vendas;

Arredondar um valor numérico para três casas à esquerda : trunc : Oracle

SELECT TRUNC(valor_compra, -3) FROM tbl_compras;

Arredondar um valor de data e hora para o início do ano : trunc : Oracle

SELECT TRUNC(data_hora, 'YEAR') FROM tbl_feriados;

Arredondar um valor numérico para o inteiro mais próximo : trunc : Oracle

SELECT TRUNC(valor) FROM dividas;

Truncar um valor de data usando o formato padrão : trunc : Oracle

Considere o seguinte valor de data e hora:

04-Aug-2022 15:55:32

A instrução a seguir trunca o valor da data para meia-noite:

SELECT
  TO_CHAR(
    TRUNC(TO_DATE( '04-Aug-2022 15:55:32 ', 'DD-Mon-YYYY HH24:MI:SS' )),
    'DD-Mon-YYYY HH24:MI:SS'
  ) result
FROM
  dual;

Exemplo de Saída:

RESULT
--------------------
04-Aug-2022 00:00:00

Neste exemplo,

  • Primeiro, a função  TO_DATE() converteu uma string de data em um valor.
  • Em segundo lugar, a função  TRUNC()truncou a data. Como não passamos o argumento de formato, a função usa o valor padrão que trunca a data para meia-noite.
  • Em terceiro lugar, a função TO_CHAR() função formatou o resultado da função.

Obter o primeiro dia do mês de uma data : trunc : Oracle

A instrução a seguir retorna o primeiro dia do mês atual.

SELECT
  TRUNC( SYSDATE, 'MM' ) result
FROM
  dual;

Saída:

RESULT
---------
01-JAN-23

Se você quiser retornar o primeiro dia do mês de uma data específica, basta usar essa data em vez do SYSDATE

Obtenha o primeiro dia do trimestre de uma data : trunc : Oracle

Da mesma forma, você pode obter o primeiro dia do trimestre atual:

SELECT TRUNC( SYSDATE, 'Q' ) result
FROM  dual;

Saída:

RESULT
---------
01-APR-22

Neste exemplo, substituímos o mês ( MM) por trimestre ( Q).

Conclusão sobre trunc : Oracle

A função TRUNC é uma ferramenta muito útil para arredondar valores numéricos e de data e hora em suas consultas SQL no Oracle. Experimente usá-la em suas próprias consultas e veja como ele pode facilitar o seu trabalho com banco de dados.

Referências Função TRUNC : Oracle Database


    O conteúdo foi útil ?

    Se este tutorial foi útil em seu desenvolvimento profissional, não deixe de se inscrever no canal e compartilhá-lo com amigos e colegas. Sua ação pode ajudar outras pessoas a se qualificarem também. Obrigado por sua atenção.

    Se você gostou do nosso trabalho e tem a possibilidade de nos apoiar financeiramente, nós lhe agradeceríamos muito se pudesse fazer uma doação através de nosso pix. Qualquer valor é bem-vindo e fará toda a diferença para nós. Sua ajuda será fundamental para que possamos continuar produzindo conteúdo de qualidade e ajudando pessoas a se desenvolverem profissionalmente. Se você puder e quiser, basta seguir as instruções de doação que forneceremos. A sua generosidade será muito apreciada e fará toda a diferença para nós. Obrigado pelo seu apoio.

    Doe qualquer valor pelo PIX e apoie o WebMundi.com
    Doe qualquer valor pelo PIX e apoie o WebMundi.com

    Chave pix: pix@webmundi.com

    Essas doações ajudam a manter o canal e nosso site e também na criação de novos conteúdos.

    E por falar em criação de conteúdo, em breve, teremos mais vídeo aulas aqui do canal sobre o banco de dados Oracle.

    Por isso não esqueça de se inscrever no canal e ativar as notificações para ser avisado sobre novos vídeos aqui do canal.

    Materiais e leituras que recomendamos para você:


    Loja WebMundi.com : Informática

    + Ofertas Informática, Computadores e Tecnologia


    Obrigado

    Esperamos que esta publicação tenha lhe ajudado a aprofundar seus conhecimentos em Banco de Dados Oracle.

    Qual é sua experiência este Banco de Dados ?

    Conte pra nós a sua experiência, adoraríamos saber.

    Como entusiasta em desenvolvimento de software, queremos enriquecer sua experiência e conhecimento sobre este produto. 

    Se você gostou deste post, compartilhe com seus amigos ou nos acompanhe pelas redes sociais.

    Tem alguma dúvida ou observação a fazer ? 

    Além disso, você pode nos ajudar a criar mais conteúdos como este. Como ?

    Adquira produtos em nossa Loja Virtual, uma parceria do webmundi.com com as maiores plataformas de comércio eletrônico do Brasil.

    Lembrando que comprando em nossa loja você apoia a criação de vídeos gratuitos aqui no site e em nosso canal do YouTube.

    Prestigie também nossos apoiadores e anunciantes conhecendo seus produtos e serviços.

    É simples e rápido e assim você ajuda a gente a crescer. 👍🏼

    Obrigado e um grande abraço

    Posts Similares