Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

Função MySQL TRUNCATE() – Trunca um número para um número especificado de casas decimais


No MySQL, o TRUNCATE() função trunca um valor para um número especificado de casas decimais.

A função aceita dois argumentos; o valor e o número de casas decimais para truncar esse valor.

Todos os números são arredondados para zero.


Sintaxe


A sintaxe fica assim:
TRUNCATE(X,D)

Onde X é o valor para o qual você deseja truncar e D é o número de casas decimais para truncá-lo.

Exemplo 1 – Uso básico


Aqui está um exemplo básico para demonstrar.
SELECT TRUNCATE(1.2345, 2);

Resultado:
+---------------------+
| TRUNCATE(1.2345, 2) |
+---------------------+
|                1.23 |
+---------------------+

Exemplo 2 – Especifique nenhum ponto decimal


Você pode truncar o número para nenhum ponto decimal usando 0 como segundo argumento.
SELECT TRUNCATE(1.2345, 0);

Resultado:
+---------------------+
| TRUNCATE(1.2345, 0) |
+---------------------+
|                   1 |
+---------------------+

Exemplo 3 – Especifique uma parte fracionária negativa


Você também pode especificar um valor negativo para o segundo argumento. Isso faz com que os dígitos do lado esquerdo do ponto decimal se tornem zero. O número de dígitos afetados é determinado pelo valor que você fornece.

Aqui está um exemplo:
SELECT TRUNCATE(123.45, -1);

Resultado:
+----------------------+
| TRUNCATE(123.45, -1) |
+----------------------+
|                  120 |
+----------------------+

E se ajustarmos o segundo argumento:
SELECT TRUNCATE(123.45, -2);

Resultado:
+----------------------+
| TRUNCATE(123.45, -2) |
+----------------------+
|                  100 |
+----------------------+

Exemplo 4 – Expressões


Você também pode passar expressões como esta:
SELECT TRUNCATE(1 + .2345, 2);

Resultado:
+------------------------+
| TRUNCATE(1 + .2345, 2) |
+------------------------+
|                   1.23 |
+------------------------+

Você também pode fazer isso com o segundo argumento:
SELECT TRUNCATE(1.2345, 1 + 1);

Resultado:
+-------------------------+
| TRUNCATE(1.2345, 1 + 1) |
+-------------------------+
|                    1.23 |
+-------------------------+

Exemplo 5 – Passando em uma função


Neste exemplo eu passo no MySQL PI() função como o primeiro argumento.
SELECT 
  PI(),
  TRUNCATE(PI(), 2);

Resultado:
+----------+-------------------+
| PI()     | TRUNCATE(PI(), 2) |
+----------+-------------------+
| 3.141593 |              3.14 |
+----------+-------------------+