1. 程式人生 > >mybatis的sql語句in欄位的使用

mybatis的sql語句in欄位的使用

在mybatis的xml名稱空間中,出現用"in"關鍵字查詢時,會出現查不出來值,為空,

解決辦法:

將"in"後面括號裡的變數的"#"替換成"$",

例如:

select * from user where id in(${xxx})
原因如下:

MyBatis看到 #{}會認為你在給sql中的變數賦值,就像JDBC程式設計中給問號賦值一樣(自動在前後加單引號)也就是說,他把你傳入的字串並沒有當做多個值,而是當做一個大的字串,所以查詢不到值)

而MyBatis看到${}的時候會直接將之替換成變數的值而不做任何處理。