1. 程式人生 > >myBatis 操作 mysql時,使用 like 關鍵進行模糊查詢的方法

myBatis 操作 mysql時,使用 like 關鍵進行模糊查詢的方法

我嘗試了以下三種方式:

 一、

like '%#{mkName}%'

這種方式,myBatis直接報錯,說引數的數量不匹配。

二、

like '%'||#{mkName}||'%'  

這種方式不報錯,但是查詢出來的結果是不是對的。比如,對於 mkName這個欄位,資料庫中只有 “小學”  這個值,但是當mkName的值為“中”時,它也會將“小學”相關的記錄全部查詢出來。

所以,這種方式也NG了。

三、

like CONCAT('%', #{mkName}, '%')

這種方式是能夠正常工作的,而且取得的是正常的結果集。

四、

通過JAVA程式碼,直接在“mkName”變數的值的前後加上“%”之後,然後再傳遞給 myBatis。