使用sum对字段求和
李维山 人气:0使用sum对字段求和
如下sql,为计算用户收益总和:
<select id="getTotalIncome" resultType="com.lws.test.modules.user.entity.UserIncomeEntity"> select sum(income) as totalIncome from income_log where uid = #{uid,jdbcType=BIGINT} </select>
其中返回的求和字段类型需要设置为 BigDecimal :
public class UserIncomeEntity { private BigDecimal totalIncome; }
避免Mybatis sum求和返回null
<select id="getOrderSumMoneyByUserCode" parameterType="string" resultType="bigDecimal"> SELEC SUM(ORDER_MONEY ) FROM gm_order WHERE ADD_UID = #{userCode} </select>
如上写法如果没有结果的话就会返回null,其实我们希望返回的是0.00这种情况
<select id="getOrderSumMoneyByUserCode" parameterType="string" resultType="bigDecimal"> SELECT COALESCE(SUM(ORDER_MONEY),0) FROM gm_order WHERE ADD_UID = #{userCode} </select>
以上为个人经验,希望能给大家一个参考,也希望大家多多支持。
加载全部内容