public List<Students>selectStuAll(@Param("timeteach") Integer timeteach,@Param("cid") Integer cnamecid,@Param("stuname") String stuname);
4.最后就是执行我们的动态sql语句了,这里我是多表连接查询,可以重点看where标签里面的部分就是我们的动态sql语句实现方法,where标签包裹就是代表数据库中的where关键字:里面用 if 来判断传来的参数,如果参数不为空,就拼接上里面的条件,如果为空就不拼接,这样就完成了我们的多条件动态sql查询
<selectid="selectStuAll"resultMap="stumap">
SELECT distinct a.stuname,a.stunum,a.stuage,a.stusex,a.sturemarks,a.stuimg,a.stuhome,b.cname,c.timeteach
FROM `students` a left join clazz b on a.stuclazz = b.cid
inner join clazztime c on b.cid = c.timeclzid
<where><iftest="timeteach != null and timeteach != ''">
and timeteach = #{timeteach}
</if><iftest="cid != null">
and b.cid = #{cid}
</if><iftest="stuname != null">
and a.stuname like concat('%',#{stuname},'%')
</if></where></select>