mybatis 用 IN 批量查詢 只返回一條資料

2021-10-02 07:22:32 字數 427 閱讀 9164

這個問題網上大多數是從其他角度 比如怎麼正確使用mybatis的標籤講的。我自己遇到問題的時候確定自己使用標籤沒問題,但執行結果還是超出期望。

直接說結論吧。

如果xml中寫的是:

listgetlistbymsgids(@param("msg_ids")listmsg_ids);

xml中sql為(簡化了*部分)

select * from   table where id  in#

那麼最終執行的 sql會變成  select * from   table where id  in('13,14') ;  這樣只會查到id為 13的資料。

所以此時 還是要換成 ${}才可以執行期望的sql:

select * from   table where id  in(13,14) ;

並且獲得 兩條資料。

mybatis批量查詢

今天在用mybatis寫乙個查詢操作,需求是根據userid去查表查出其使用者名稱username,返回使用者名稱username與userid即可。由於可能包含多個userid,因此把userid的值封裝到map中,再把map新增的list裡。public list findusername st...

mybatis之批量查詢

關於mybatis批量更新和新增,參考我的如下文章即可 mybatis的批量更新例項 mybatis的批量新增例項 另外不管是批量的新增 刪除 修改 查詢也好,還是單個新增 刪除 修改查詢也罷。都會用到動態sql。關於mybatis的動態sql可以參考我的這篇文章,如下 mybatis實戰之動態sq...

mybatis批量查詢,批量新增,批量更新

一 多條件批量查詢 先上 再講解 select from ifs company where id and code id標籤不用多說,和dao方法一一對應。parametertype標籤寫list就可以,如果是其他型別對應寫就可以。resultmap,自己定義的字段實體類對應。二 批量新增 先上 ...