此问题的产生,主要是数据库的字段名一样导致
三张表 DOCTOR JOB OBJECT
有问题的查询语句和查询结果是:
SELECT d.*,j.*,o.* from
(select d.*,rownum r from DOCTOR d where rownum<=6) d
join job j on d.job_id=j.id join object o on o.id=d.object_id
where r>0
<img src="https://img-blog.csdn.net/20161020110037608?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />
注意
:查询结果中有6列是一样的id,name
修改为别名
SELECT d.*,j.name jobn,j.id jid,j.oid joid,o.id objid,o.name objn from
(select d.*,rownum r from DOCTOR d where rownum<=6) d
join job j on d.job_id=j.id join object o on o.id=d.object_id
where r>0
<span style="color:#3366ff;">新的查询结果是: 注意看列名</span>
<span style="color:#3366ff;">
</span>
<span style="color:#3366ff;"><img src="https://img-blog.csdn.net/20161020110703515?watermark/2/text/aHR0cDovL2Jsb2cuY3Nkbi5uZXQv/font/5a6L5L2T/fontsize/400/fill/I0JBQkFCMA==/dissolve/70/gravity/Center" alt="" />
</span>
此时依然不能解决数据重复问题,还需要修改resultMap的column属性名为别名
至此问题全部解决