mysql 金额(decimal)相加

mysql decimal
这是单列求的值:
正常的mysql金额求和就是sum(‘amt1’+‘amt2’+‘amt3’)as amt;
这些适用一些普通的数字类型相加没问题,sql写的少了很多人都忘了,在做数值相加的时候需要判断这个金额是否为空!今天也是没想到这个问题,导致耽误了五分钟时间去搜怎么回事。

sum(IFNULL(amt1,0)+IFNULL(amt2,0)+IFNULL(amt3,0)) AS amt

以后关于这方面的使用时,大家还是要注意关于是空判断啊!

延伸一下,关于金额的类型选择,因为有些特殊的需求需要金额后五位甚至八位的变态要求

cast( sum(IFNULL(amt1,0)+IFNULL(amt2,0)+IFNULL(amt3,0)) AS DECIMAL (11, 8) ) AS money

至于相减或者其他的运算,操作差不多。

如果是多个值并存:

去掉sum,一个个加就好了。主要是得判空。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值