读书人

ibatis中的行转列列不固定的解决办法

发布时间: 2012-06-30 17:20:12 作者: rapoo

ibatis中的行转列,列不固定的解决方法

1、取得不同情况需要的列的List。?

? ? ??pageParam.put("kpiList", kpiList);

tempList = daoHelper.queryForList("XXX.queryAssignKpi2", pageParam);

?2、行列转置sql

select org_id,ORG.NAME,         <iterate property="kpiList" conjunction=",">           sum(decode(target_id, '$kpiList[]$', target_value, 0)) as "$kpiList[]$1", sum(decode(target_id, '$kpiList[]$', ACHIEVE_VALUE, 0)) as "$kpiList[]$2",                       (sum(decode(target_id, '$kpiList[]$', ACHIEVE_VALUE, 0)) /                       decode(sum(decode(target_id, '$kpiList[]$', target_value, 0)),0,1,                       sum(decode(target_id, '$kpiList[]$', target_value, 0)))) * 100 as "$kpiList[]$3"         </iterate> from   ASV inner join   ORG ON  ASV.ORG_ID = ORG.ID and ORG.PARENT_ID=#ORG_ID#group by ASV.org_id,ORG.NAME
?3、注意,由于列不固定,列变化后会报错,解决方法参考http://woshiwanxin102213.iteye.com/admin/blogs/1512723

读书人网 >软件架构设计

热点推荐