溫馨提示×

MyBatis的like操作的條件組合如何實現

小樊
284
2024-08-14 16:06:37
欄目: 編程語言

在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中的標簽來判斷條件是否成立,如果name不為空,則拼接name字段的模糊查詢條件;如果age不為空,則拼接age字段的精確查詢條件。

這樣就可以根據傳入的參數動態拼接like操作的條件組合。

0
亚洲午夜精品一区二区_中文无码日韩欧免_久久香蕉精品视频_欧美主播一区二区三区美女