MySQL中的TRUNCATE()函数的用法详解

2024-11-17 2

MySQL的TRUNCATE()函数

TRUNCATE(X,D) 是MySQL自带的一个系统函数。

其中,X是数值,D是保留小数的位数。

其作用就是按照小数位数,进行数值截取(此处的截取是按保留位数直接进行截取,没有四舍五入)。

规则如下

  • 1)当 D 大于0,是对数值 X 的小数位数进行操作;

  • 2)当 D 等于0,是将数值 X 的小数部分去除,只保留整数部分;

  • 3)当 D 小于0,是将数值 X 的小数部分去除,并将整数部分按照 D 指定位数,用 0 替换。

函数示例

当 X 为正数时

1
2
3
4
5
6
7
SELECT TRUNCATE(123.4567, 3); # 123.456
SELECT TRUNCATE(123.4567, 2); # 123.45
SELECT TRUNCATE(123.4567, 1); # 123.4
SELECT TRUNCATE(123.4567, 0); # 123
SELECT TRUNCATE(123.4567, -1); # 120
SELECT TRUNCATE(123.4567, -2); # 100
SELECT TRUNCATE(123.4567, -3); # 0

当 X 为负数时

1
2
3
4
5
6
7
SELECT TRUNCATE(-123.4567, 3); # -123.456
SELECT TRUNCATE(-123.4567, 2); # -123.45
SELECT TRUNCATE(-123.4567, 1); # -123.4
SELECT TRUNCATE(-123.4567, 0); # -123
SELECT TRUNCATE(-123.4567, -1); # -120
SELECT TRUNCATE(-123.4567, -2); # -100
SELECT TRUNCATE(-123.4567, -3); # 0