Mybatis动态sql批量删除
MyBatis提供了动态SQL的功能,可以使用动态标签来实现批量删除操作。以下是一个示例:
<delete id="deleteUsers" parameterType="java.util.List">
DELETE FROM users
WHERE id IN
<foreach collection="list" item="id" open="(" separator="," close=")">
#{id}
</foreach>
</delete>
在上面的示例中,deleteUsers是删除操作的ID,parameterType指定了参数类型为java.util.List,表示要删除的ID列表。在SQL语句中,使用IN关键字和foreach标签来实现批量删除。foreach标签中的collection属性指定了要遍历的集合,item属性指定了每次遍历的元素变量名,open、separator和close属性分别指定了遍历过程中的前缀、分隔符和后缀。
使用时,可以将要删除的ID列表传递给MyBatis的删除操作方法,例如:
List<Integer> ids = Arrays.asList(1, 2, 3);
userMapper.deleteUsers(ids);
上述代码中,userMapper是MyBatis生成的Mapper接口实例,deleteUsers是接口中定义的删除方法,参数为要删除的ID列表
原文地址: https://www.cveoy.top/t/topic/hMwT 著作权归作者所有。请勿转载和采集!