关于Mybatis的SQL映射文件中in关键字的用法

时间:2023-03-09 16:41:54
关于Mybatis的SQL映射文件中in关键字的用法
有一个需求是可以选择多个设备进行删除,于是想到将多个设备id拼成字符串作为参数,以逗号隔开,如:"123,234,456"。
SQL如下:
<delete id="deleteLineEquip" parameterType="String">
    delete from AXX_LINE_EQUIP e where e.EQUIP_ID in (${ids})
</delete>
但是系统在执行时老是报错,提示数据类型不对。
尝试很多方法后终于解决,解决办法:
将parameterType="String"改为parameterType="map"即可。
<delete id="deleteLineEquip" parameterType="map">
    delete from AXX_LINE_EQUIP e where e.EQUIP_ID in (${ids})
</delete>