myBatis中使用like進行查詢

2021-10-02 23:16:37 字數 483 閱讀 5897

1.使用mybatis中提供的方法(oracle與mysql通用)

select * from t_user 

where 1 = 1

and name like #

2.如果是mysql,則使用mysql自身的方法(concat關鍵字是 將多個字串進行拼接)

select * from t_user where name likeconcat('%', #, '%')

例如:title like concat('%',#,'%')

3.如果是oracle,則可以使用oracle自身方法(|| 將多個字串進行拼接)

select * from t_user where namelike '%'||#||'%'

mybatis中使用like萬用字元丟擲異常

一,業務場景再現 解決方法我們可以使用 因為 將傳入的資料直接顯示生成在sql中。如 where username 如果傳入的值是111,那麼解析成sql時的值為where username 111 而不會自動新增分號。但是這樣一做又會引起sql注入問題,所以我們這裡可以這樣來操作以避免sql注入,...

mybatis使用associaton進行分步查詢

employee類 public class employeedepartment類 public class departmentselect from tbl employee where id select id,dept name departmentname from tbl dept w...

在sp executesql中使用like字句

在sp executesql中可以執行引數化的sql,但是如果sql中有like,那麼一般都要拼字串,下面的例子把兩者結合了起來,既有拼sql的靈活性,又有引數化sql的優點。declare likesql nvarchar 32 定義乙個like變數,如果是儲存過程,此處可以儲存過程的引數 set...