Oi Diego,
A função TRUNC
em Oracle é utilizada para truncar (ou seja, remover) a parte decimal de um número, de acordo com a precisão especificada. A sintaxe básica é:
TRUNC(number, [decimal_places])
number
: o número que você deseja truncar.decimal_places
: opcional, determina a quantidade de casas decimais que você deseja manter. Se for negativo, o truncamento será feito à esquerda do ponto decimal.
No seu exemplo, SELECT TRUNC(15.79, -1) FROM DUAL;
, o -1
indica que você deseja truncar uma casa decimal à esquerda do ponto decimal. Isso significa que o número será truncado para o múltiplo de 10 mais próximo que é menor ou igual a 15.79, resultando em 10.
Aqui estão mais alguns exemplos para ilustrar:
SELECT TRUNC(15.79) FROM DUAL;
Resultado: 15
(truncando para zero casas decimais)
SELECT TRUNC(15.79, 0) FROM DUAL;
Resultado: 15
(truncando para zero casas decimais)
SELECT TRUNC(15.79, 1) FROM DUAL;
Resultado: 15.7
(truncando para uma casa decimal)
SELECT TRUNC(15.79, -1) FROM DUAL;
Resultado: 10
(arredondar para a dezena mais próxima para baixo)
Caso este post o tenha ajudado, por favor,
marcar como solucionado ☑️.
Bons Estudos! 🤓