在MyBatis中,可以使用动态SQL来实现like操作的条件组合。下面是一个示例:
假设有一个User表,包含字段id、name和age,现在需要根据name和age进行模糊查询。可以编写一个Mapper接口方法如下:
List<User> findUsersByCondition(@Param("name") String name, @Param("age") Integer age);
然后在对应的Mapper.xml文件中,使用动态SQL来拼接like条件:
<select id="findUsersByCondition" parameterType="map" resultType="User">
SELECT * FROM user
<where>
<if test="name != null and name != ''">
AND name LIKE CONCAT('%', #{name}, '%')
</if>
<if test="age != null">
AND age = #{age}
</if>
</where>
</select>
在上面的示例中,使用了动态SQL中的
这样就可以根据传入的参数动态拼接like操作的条件组合。