ibatis查询条件包含IN
ibatis查询SQL中有时候需要用到IN条件,怎么使用呢?
如下,其中provinceIDStr和cityIDStr是在实体类里面定义的属性provinceID和cityID对应的数组;
private String[] provinceIDStr; //所在省ID数组 private String[] cityIDStr; //所在市ID数组
实现代码:
<select id="getList"> SELECT * from user <dynamic prepend="WHERE"> <isNotNull prepend="AND" property="id"> id=#id# </isNotNull> <isNotNull prepend="AND" property="userName"> userName like '%$userName$%' </isNotNull> <isNotNull prepend="AND" property="provinceID"> provinceID=#provinceID# </isNotNull> <isNotNull prepend="AND" property="cityID"> cityID=#cityID# </isNotNull> <isNotNull prepend="AND" property="provinceIDStr"> provinceID in <iterate open="(" close=")" conjunction="," property="provinceIDStr" > #provinceIDStr[]# </iterate> </isNotNull> <isNotNull prepend="AND" property="cityIDStr"> cityID in <iterate open="(" close=")" conjunction="," property="cityIDStr" > #cityIDStr[]# </iterate> </isNotNull> </dynamic> order BY id ASC </select>