ROUND, TRUNC e MOD

Neste post vou explicar um pouco sobre estas funções que sempre ajudam, principalmente, em relatórios gerenciais.

Vamos direto ao Ponto.

TRUNC

Mantém apenas a parte desejada de um numéro. Ao usar este método podemos fornecer o número de casas decimais preservadas e formatar um número.
Ex:

SELECT TRUNC( 12356.98 , 1 ) FROM DUAL

Este cara vai remover todos os algarismos depois do primeiro que sucede a pontuação, ou seja, vai retornar “12356.9”.

o trunc pode ser usado tambem para pegar o valor mais significativo desejado de um número, exemplo:

SELECT TRUNC( 12356.98 , -3 ) FROM DUAL

Já neste exemplo o valor retornado será “12000”. O TRUNC zera os 3 caracteres menos significativos do número.

ROUND

Arredonda o valor dada uma posição específica. ( não é obrigatório fornecer parametro )

Vamos ver um exemplo bem simples:

SELECT ROUND( 12356.98 , 0 ) FROM DUAL

Aqui o valor retornado será “12357” sendo apenas os valores após a vírgula removidos.
Agora, nada impede que vc arredonde um valor mais amplo. Imagine se vc quisesse arredondar os “12356.98” para “12400”, como você faria?

Dica:

SELECT ROUND( 12356.98 , -2 ) FROM DUAL

O -2 da sentença fará o ROUND arredondar todos os numeros após a pontuação e os dois números que antecederem ela. Em miúdos, o 56.98 serão arredondados.

MOD

O grande método mágico que retorna o resto da divisão!

Ex:

SELECT MOD( 12356.98 , 12000 ) FROM DUAL

Isto te retornará “356.98”. Isto significa que “12356.98” divididos por “12000” resultará em “1” e terá sobra de “356.98”.

Bem, sobre estes métodos é isso.
É claro que existem diversas outras formas de uso, até mesmo outros métodos que voce possa combinar para fazer o mesmo.

🙂

Deixe uma resposta