阅读量:0
在MyBatis中,可以使用<where>
和<if>
标签来实现删除操作时的条件筛选。
例如,假设我们要删除名为"张三"且年龄大于18的用户信息,可以使用如下的SQL语句和MyBatis的方法来实现:
SQL语句:
DELETE FROM user_table WHERE name = '张三' AND age > 18;
MyBatis XML映射文件:
<delete id="deleteUser" parameterType="map"> DELETE FROM user_table <where> <if test="name != null"> AND name = #{name} </if> <if test="age != null"> AND age > #{age} </if> </where> </delete>
在Java代码中调用该MyBatis方法时,需要传入一个Map对象作为参数,该Map对象包含需要筛选的条件,比如:
Map<String, Object> params = new HashMap<>(); params.put("name", "张三"); params.put("age", 18); int rowsAffected = sqlSession.delete("deleteUser", params);
这样就可以根据传入的条件动态生成对应的SQL语句,实现根据条件删除数据的功能。