sql中的四舍五入通常会有round 和cast( …… as decimal())两种方式:
个人建议使用cast 方式:
方式1-round
经过试验,同样都可以做到四舍五入,但round如下实例1会报错,
实例1:select round(0.996123,2) 报错:将 expression 转换为数据类型 numeric 时出现算术溢出错误。
实例2:select round(0.99432,2) 结果为 0.99000
方式2-cast
cast四舍五入:
SELECT CAST('123.456' as decimal(38, 2)) ===>123.46
SELECT CAST(0.996123 AS DECIMAL(38,2)) 结果为 1.00
SELECT CAST('123.456' as dec(38, 2)) ===>123.46