mysql中 truncate() 和 format() 保留小数位数的区别:
truncate() 直接截取,不四舍五入。
format() 会四舍五入,返回类型是字符串,因为满3位会加一个逗号,可以考虑用convert();
例如:
format(param, 2) 改为:
convert(param, decimal(12, 2))
cast(param as decimal(12, 2))
SELECT FORMAT(312312.123,3); //312,312.123
SELECT TRUNCATE(123123.123,2); //312312.12
SELECT CONVERT(312312.123,DECIMAL(12,2)); //312312.12
SELECT cast(31232.123 AS DECIMAL(12,2)); //312312.12