-
SELECT TRUNC (1652.479123, 3) AS valor FROM DUAL
UNION ALL
SELECT TRUNC (1652.479123, 2) AS valor FROM DUAL
UNION ALL
SELECT TRUNC (1652.479123, 1) AS valor FROM DUAL
UNION ALL
SELECT TRUNC (1652.479123) AS valor FROM DUAL
UNION ALL
SELECT TRUNC (1652.479123, -1) AS valor FROM DUAL
UNION ALL
SELECT TRUNC (1652.479123, -2) AS valor FROM DUAL
UNION ALL
SELECT TRUNC (1652.479123, -3) AS valor FROM DUAL;
http://raphaeloafernandes.blogspot.com.br/2013/03/as-funcoes-numericas-round-e-trunc-no.html
-
A função trunc realiza uma operação de truncamento em um valor numérico com base em uma precisão decimal especificada, que é opcional. Ou seja, a função “quebra” o resultado na precisão decimal especificada e não tenta arredondar para cima ou para baixo.
Portanto, temos o seguinte:
TRUNC(65.923,2) -> 65.92
TRUNC (65.923) -> 65
TRUNC(65.923,-1) -> 60
-
TRUNC(65.923,2) = 65.92 (trunca o número na segunda depois da vírgula)
TRUNC (65.923) = 65 (trunca o número, retirando todas as casas depois da vírgula)
TRUNC(65.923,-1) = 60 (trunca o número colocando a primeira casa antes da vírgula para zero)
Bons estudos!
-
e-
O trunc sempre arredonda p/ baixo.
trunc (n,m) retorna o n° de m casas decimais. e.g.: trunc (23.66600, 2) .: 23.666.
trunc (n) sem m, retorna o valor int arredondado p/ baixo.
trunc com n° negativo arredonda o inteiro para a próxima dezena.
-
Gloomy Gulch, trunc não arredonda nada, apenas "corta" o número mesmo.
-
The TRUNC (number) function returns n1 truncated to n2 decimal places. If n2 is omitted, then n1 is truncated to 0 places. n2 can be negative to truncate (make zero) n2 digits left of the decimal point.