select查询时用了sum函数后,怎么得到结果?
问题描述:
我这是在SSM框架下的网站,在Dao层的mapper里用了这样的查询语句
<select id="selectData"
parameterType="String"
resultType="Data">
select sum(op_numbers),
sum(pb_numbers),
sum(pe_numbers)
from b_data
where year = #{year}
and quarter = #{quarter}
</select>
resultType="Data"这里的Data是持久化类,在controller里调用查询语句,执行了
上面的查询sql语句成功了,那我要怎么得到查询出来的那3个用sum()求和过的结果啊?
@RequestMapping(value = "/admin/allData.action")
public String allData(Model model){
nursingQualityDataService
.selectData(year,quarter);
//这里查询后要怎么获得结果?
return "admin";
答
<select id="selectData"
parameterType="String"
resultType="Data">
select sum(op_numbers) as op_numbers,
sum(pb_numbers) as pb_numbers ,
sum(pe_numbers) as pe_numbers
from b_data
where year = #{year}
and quarter = #{quarter}
</select>
在controller里用Data.getOp_Numbers();这种相应的getter方法就可获取到
答
sum那个字段给别名,Data有别名对应的变量来接受值。
答
<result column="sum1" property="javaBean的属性名字" jdbcType="integer" />
parameterType="String"
resultType="Data"
resultMap="BaseResultMap"
>
select sum(op_numbers),
sum(pb_numbers),
sum(pe_numbers)
from b_data
where year = #{year}
and quarter = #{quarter}
答
回答的比较少,格式老出错。就是在查询语句,写个返回的resultmap 然后自己定义这个map放什么。
答
多个sum的时候,查询结果为分别每个字段的sum结果而已