写sql分页查询时,要写2个sql,一个是统计总数,一个是写取分页的具体记录
如:
<select parameter resultMap="Task">
select count(1) from tasks
<dynamicprepend="where">
<isNotNull property="taskname" prepend="and">
tasknamee=#taskname#
</isNotNull>
.....
这里有很多条件,有10多个条件
</dynamic>
</select>
<select parameter resultMap="Task">
这里是分页查询的sql
<dynamicprepend="where">
<isNotNull property="taskname" prepend="and">
tasknamee=#taskname#
</isNotNull>
.....
这里有很多条件,有10多个条件
</dynamic>
</select>
这两条sql的条件是完全一样的,条件又要重复复制一遍,感觉好长的,要增加一个条件的话,2条语句都要修改
你们是怎么处理的呢,有办法这两条sql语句重复条件部分吗
亦有同感。
对于可以重复使用的sql语句,可以分为两步:
1、声明: 在xml的statement中使用sql标签<sql i='wh'></sql>
2、引用:在需要使用的地方,使用include命令将sql标签内容加入到sql语句中。<include refid='wh' />