伪列使Mybatis ResultMap不去重操作

MyBatis的ResultMap默认是把id作为map的主键,当id相同时,不管其他字段相不相同,它都当作相同的记录。那么主键是唯一的,所以他就会进行去重操作。

需求SQL查询中一个id下回有多个结果,这是我们需要的,但是ResultMap中,id为唯一主键,就会当他们是一条记录,自动去重。

步骤:

  • 1、在类中添加伪列属性;
  • 2、SQL中添加伪列变量;
...
select 
@rowNo:= @rowNo+1 as rowNo,
(select @rowNo:=0) as t,
...
  • 3、Mapper中添加对应的映射。
posted @ 2021-11-28 14:48  一指大人  阅读(428)  评论(0)    收藏  举报