1.if 语句的使用 <select id="findPagedMedicines" resultType="Medicine"> select * from vw_medicine where 1=1 <!--药名--> <if test="type=='1'.toString()"> and medicine_name like #{requestValue} </if> <!--功效--> <if test="type=='2'.toString()"> and effect like #{requestValue} </if> order by ${orderBy} <if test="isDesc"> DESC </if> limit #{limit} offset #{offset} </select>
2.where -- if 语句的使用
<select id="findPagedMedicines" resultType="Medicine"> select * from vw_medicine <where> <!--药名--> <if test="type=='1'.toString()"> medicine_name like #{requestValue} </if> <!--功效--> <if test="type=='2'.toString()"> where effect like #{requestValue} </if> </where> order by ${orderBy} <if test="isDesc"> DESC </if> limit #{limit} offset #{offset} </select>
3.在mybatis如何实现SQL语句的in功能
<select id="findPagedMedicines" resultType="Medicine"> select * from vw_medicine <where> <if test="ids !=null and ids.size()>0"> <foreach collection="ids" open="and id in (" close=")" item="id" separator=","> #{id} </foreach> </if> </where> </select>