我的视图中的“发货款”字段是decimal:
按说应该是四舍五入的,但是运行后:
计算后没有经过cast的原值是:201258.675
而被cast函数处理后,应该四舍五入为:201258.68 的,但实际却是:201258.67。四舍五入失灵?
我的视图中的“发货款”字段是decimal:
按说应该是四舍五入的,但是运行后:
计算后没有经过cast的原值是:201258.675
而被cast函数处理后,应该四舍五入为:201258.68 的,但实际却是:201258.67。四舍五入失灵?
select CAST(1234.4 AS NUMBER (10, 2) ) as aa from dual ;
select CAST(12 AS NUMBER (10, 2) ) as aa from dual ;
select CAST(0 AS NUMBER (10, 2) ) as aa from dual ;
PS:追加一点,字符串可以直接进行类型转换,而无需使用to_number()函数做中间转换。SQL语句如下:
select CAST('1234.4' AS NUMBER (10, 2) ) as aa from dual ;
select CAST('12' AS NUMBER (10, 2) ) as aa from dual ;
select CAST('0' AS NUMBER (10, 2) ) as aa from dual ;