Mybatis中Foreach動態SQL標籤(map和list兩種情況)

禽獸羋發表於2020-10-04

第一種方式:當傳入引數為map時

Foreach標籤中,主要是collection、item、open、close、separate,collection指的是傳入的集合名字,item指的是遍歷出來的每個項的名字,open是指開始的符號,close是指結束的符號,separate是指各個項的連線符號

上面執行出來的SQL語句如下圖所示:

open就是SQL拼接的開始符號,也就是“(”),close就是SQL拼接的結束符號,也就是“)”),separate就是SQL拼接的連線符號,也就是“or”,可視情況在開始符號加入“and”,但是記得加入and後需要一個空格,不然會報錯

查詢結果正確

第二種方式:當傳入引數為list時

傳入引數修改為list,collection同時修改為list,新增index引數,表示迭代開始序號,其他基本與map無差別

查詢結果正確

相關文章