第二版
(-1)寫在前面
我用的是MyBatis 3.2.4
(0) 編程軼事
select sum(value) ,sum(value2) from integral_list where MemberId = #{0} and operate = 1 and Year(AddTime) = #{1} and ChannelType = #{2} and ChannelCode = #{3}
我用的sqlyoug顯示的的字段名分別是sum(value) 、sum(value2)
我在xml文件中返回值類型是實體類的別名,由於mybatis根據數據庫字段名找到實體類字段的set方法確認這個字段是否存在
我將語句改為如下便正確了
select sum(value) as 'value',sum(value2) as 'value2' from integral_list where MemberId = #{0} and operate = 1 and Year(AddTime) = #{1} and ChannelType = #{2} and ChannelCode = #{3}
順便說一下如何接收返回值,因為執行語句返回的結果集是一行數據兩個字段,可以用hashmap
配置文件關鍵部分為:
<select resultType="hashmap">
實體類映射xml文件關鍵部分為:
HashMap<String, BigDecimal>
得到的結果結構為
key value
“value” 28.0
“value2” 8.0
對於加班我的感觸是:以前學習花錢,現在學習掙錢。