[英]How to return columns with null values in a result map in mybatis
<select id="keyEquipmentShiftAutomatedModelData" parameterType="java.util.Map" resultType="java.util.Map">
SELECT ID, SUM(VALUE1 + VALUE2) Total
FROM tableName
GROUP BY ID
</select>
Returns below result in sql
ID, Total
1 (null)
But when returned in Map result in myBatis returns {ID=1} where as Total is missing. 但是,当在Map中返回结果时,myBatis返回{ID = 1},其中缺少Total。 How to get the column with null into the result set as well something like this {ID=1,Total=null} or something like this {ID=1,Total=""}
如何将具有null的列以及诸如此类的{ID = 1,Total = null}或诸如此类的{ID = 1,Total =“”}
Adding 添加
<settings>
<setting name="callSettersOnNulls" value="true"/>
</settings>
mybatis-config.xml fixes the issue if using mybatis 3.2 + version 如果使用mybatis 3.2及更高版本,mybatis-config.xml可解决此问题
谢谢,它有效,除了您需要转换价值
columns[i] = (value == null) ? "" : String.valueOf(value);
使用普通Sql中的coalesce
可以轻松解决此问题:
COALESCE( SUM(VALUE1 + VALUE2), '') as Total
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.