欢迎您访问新疆栾骏商贸有限公司,公司主营电子五金轴承产品批发业务!
全国咨询热线: 400-8878-609

新闻资讯

常见问题

如何在mapper文件中使用in("str1","str2")

作者:用户投稿2026-01-11 06:01:50

mapper文件使用in("str1","str2")

mybatis的xxxMapper.xml文件中,如果筛选的字段使用的是varchar类型,在xml中需要对遍历做处理,在遍历的字段外加‘’

xml

select * from table_name
<where>
    del_flg = 1
    <if test="statuses != null and statuses.size() > 0 ">
        and status in
        <foreach collection="statuses" close=")" open="(" item="item" separator=",">
            -- 此处添加单引号
            '${item}'
        </foreach>
    </if>
</where>

小细节记录下来,方便后续查看 

mapper.xml中sql使用 in 执行失败的原因

mapper.xml传参如果下

user_obj_id in ( #{ids})

最终执行的sql拼接如下

user_obj_id in ( ‘55,56,57' )

而不是期望的

user_obj_id in ( ‘55',‘56',‘58' )

以上为个人经验,希望能给大家一个参考,也希望大家多多支持。