Mybatis中如何使用sum对字段求和
作者:李维山
这篇文章主要介绍了Mybatis中如何使用sum对字段求和,具有很好的参考价值,希望对大家有所帮助。如有错误或未考虑完全的地方,望不吝赐教
使用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>
以上为个人经验,希望能给大家一个参考,也希望大家多多支持脚本之家。