導讀 | 有時候用MyBatis查詢結果集,將列印的sql語句放在資料庫客戶端執行,例如結果為10條,但是MyBatis回傳的資料卻只有4條,這是為什麼呢? |
MyBatis的ResultMap預設是把id當作map的主鍵,當id相同時,不管其他欄位相不相同,它都當作相同的記錄。那當我們想要MyBatis不去重,怎麼操作呢?在POJO定義中加入一個偽id作為一標識即可。如:
在主表類別(User.java)裡 新增一個“偽列”,作用:不去重 #UserMapper.xml #運行結果原理:此sql語句產生一列不重複的數據,例如:行號;以此列作為主鍵,MyBatis偵測主鍵不重複,所以傳回多個資料記錄。
以上是如何使用MyBatis ResultMap進行去重操作?的詳細內容。更多資訊請關注PHP中文網其他相關文章!