首页 新闻 会员 周边 捐助

sql 问题:合计金额和明细的金额合计小数点不一致问题大家如何解决??

0
悬赏园豆:20 [已关闭问题] 关闭于 2015-10-13 18:39

如题:
    根据各项明细的数量*单价计算出明细的金额,然后把所有明细金额计算总合计

    直接写sql计算计算各项明细的总合计金额 


   遇到小数点不一致问题,大家如何处理?谢谢!!!!

flyfish1986的主页 flyfish1986 | 初学一级 | 园豆:6
提问于:2015-04-02 14:31
< >
分享
所有回答(4)
0

数据格式decimal(20,2),统一数据格式就好啦。

幻天芒 | 园豆:37207 (高人七级) | 2015-04-02 14:33

谢谢!已经统一了都是20,2,不过问题是收-发=结存,分别都有数量和金额,结存的金额就有两种计算方法,一种直接是金额相减,一种是算出结存数量,然互用结存数量*单价,然后保留两位小数,再合计!!

支持(0) 反对(0) flyfish1986 | 园豆:6 (初学一级) | 2015-04-02 14:49

@flyfish1986: 应该差距不大吧,要更精确,那就把小数位数调多,最多保留两位小数,这样就会更精确。

支持(0) 反对(0) 幻天芒 | 园豆:37207 (高人七级) | 2015-04-02 15:11
0

明细不要保存超过两位的小数,要不然就会出现这种问题了。

爱编程的大叔 | 园豆:30844 (高人七级) | 2015-04-02 14:35

谢谢!已经统一了都是20,2,不过问题是收-发=结存,分别都有数量和金额,结存的金额就有两种计算方法,一种直接是金额相减,一种是算出结存数量,然互用结存数量*单价,然后保留两位小数,再合计!!

支持(0) 反对(0) flyfish1986 | 园豆:6 (初学一级) | 2015-04-02 14:49
0

sql也可以写case when then else 这种带条件的语法

茂茂 | 园豆:2894 (老鸟四级) | 2015-04-02 15:04
0

1.2

1.3

分别先四舍五入再汇总与加起来再四舍五入,也是一个道理。

你说这个精确性怎么做都是会有点误差的。

清海扬波 | 园豆:825 (小虾三级) | 2015-04-02 17:42
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册