MySQL TRUNCATE() 函数的第二个参数指定小数位数,如果该参数为负值,会对输出产生什么影响?
如果我们指定第二个参数为负值,则小数点前的数字将被删除,**不会**进行四舍五入。要删除的数字位数取决于第二个负参数的值。以下示例将演示根据第二个参数的负值,TRUNCATE() 函数输出的变化。
mysql> Select TRUNCATE(1789.456,-1); +-----------------------+ | TRUNCATE(1789.456,-1) | +-----------------------+ | 1780 | +-----------------------+ 1 row in set (0.00 sec)
上面的查询返回 1780,因为由于第二个参数的值为 -1,所以删除了小数点前的第一位数字。
mysql> Select TRUNCATE(1789.456,-2); +-----------------------+ | TRUNCATE(1789.456,-2) | +-----------------------+ | 1700 | +-----------------------+ 1 row in set (0.00 sec)
上面的查询返回 1700,因为由于第二个参数的值为 -2,所以删除了小数点前的两位数字。
mysql> Select TRUNCATE(1789.456,-3); +-----------------------+ | TRUNCATE(1789.456,-3) | +-----------------------+ | 1000 | +-----------------------+ 1 row in set (0.00 sec)
上面的查询返回 1000,因为由于第二个参数的值为 -3,所以删除了小数点前的三位数字。
mysql> Select TRUNCATE(1789.456,-4); +-----------------------+ | TRUNCATE(1789.456,-4) | +-----------------------+ | 0 | +-----------------------+ 1 row in set (0.00 sec)
上面的查询返回 0,因为小数点前的数字总数为 4,而第二个参数的值为 -4。
广告
数据结构
网络
关系型数据库管理系统
操作系统
Java
iOS
HTML
CSS
Android
Python
C 编程
C++
C#
MongoDB
MySQL
Javascript
PHP