Resumo : neste tutorial, você aprenderá como usar a TRUNCATE()
função MySQL para truncar um número para um número especificado de casas decimais.
Introdução à função MySQL TRUNCATE
A TRUNCATE()
função trunca um número para um número especificado de casas decimais.
Aqui está a sintaxe da TRUNCATE()
função:
TRUNCATE(X,D)
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
Nesta sintaxe:
X
é um número ou expressão numérica que você deseja truncar.D
é o número de casas decimais para as quais você deseja truncar.
A TRUNCATE()
função requer argumentos X
e D
.
Quando o D
parâmetro na TRUNCATE(X, D)
função é negativo, a função trunca os dígitos à esquerda da vírgula decimal (à esquerda do ponto) no número X
. Isso efetivamente definiu os dígitos mais à esquerda como zero.
Observe que a TRUNCATE()
função é semelhante à ROUND()
função em termos de redução do número de casas decimais. No entanto, a TRUNCATE()
função não realiza nenhum arredondamento como a ROUND()
função faz.
Exemplos de funções MySQL TRUNCATE()
Vejamos alguns exemplos de uso da TRUNCATE()
função.
1) Exemplo de uso da função TRUNCATE() com um número positivo de casas decimais
O exemplo a seguir usa a TRUNCATE()
função para truncar um número para uma casa decimal:
SELECT TRUNCATE(1.555,1);
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
Saída:
Como o argumento do número de casas decimais é 1, a TRUNCATE()
função mantém apenas 1 casa decimal no valor de retorno.
2) Exemplo de uso de TRUNCATE() com número negativo de casas decimais
O exemplo a seguir mostra como aplicar a TRUNCATE()
função com um número negativo de casas decimais:
SELECT
TRUNCATE(199.99,-2)
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
Saída:
Neste exemplo, utilizamos um número negativo de casas decimais (-2), portanto, a TRUNCATE()
função define o número 99 (os dígitos à esquerda da vírgula) como zero, resultando em 100,00.
3) Exemplo TRUNCATE() vs. ROUND()
O exemplo a seguir usa a função TRUNCATE()
and ROUND()
para comparação:
SELECT
TRUNCATE(1.999,1),
ROUND(1.999,1);
Linguagem de código: SQL (linguagem de consulta estruturada) ( sql )
Saída:
Conforme mostrado claramente na saída, a TRUNCATE()
função trunca as casas decimais, enquanto a ROUND()
função realiza o arredondamento.
Resumo
- Use a função MySQL
TRUNCATE()
para truncar um número para um número especificado de casas decimais.