栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 软件开发 > 后端开发 > Java

数据库外连接查询相同字段名,查询结果错误

Java 更新时间: 发布时间: IT归档 最新发布 模块sitemap 名妆网 法律咨询 聚返吧 英语巴士网 伯小乐 网商动力

数据库外连接查询相同字段名,查询结果错误

数据库外连接查询相同字段名,查询结果错误
今天弄一个springboot集成mybatis的小项目时发现mapper.xml中的sql外连接查询
总出现查询结果部分错误,经过排查终于解决

表 一

表二

根据表一的 dept_id 查询表二的 departmentName

resultMap:


        
        
        
        
        

        
            
            
        
    

sql :


        SELECT
	    e.id,
	    e.name,
	    e.email,
	    e.gender,
	    e.create_time,
	    d.id,
	    d.departmentName
	FROM
	`employee` e
	LEFT JOIN `department` d ON e.dept_id = d.id
    

查询结果:

Employee{id=101, name='雄安', email='326@qq.com', gender=1, department=Department{id=101, departmentName='部门三'}, createTime=Tue Oct 12 00:15:40 CST 2021}
Employee{id=102, name='张飞', email='131313@qq.com', gender=0, department=Department{id=102, departmentName='部门一'}, createTime=Tue Oct 12 00:15:42 CST 2021}
Employee{id=103, name='网我', email='32121@qq.com', gender=1, department=Department{id=103, departmentName='部门五'}, createTime=Tue Oct 12 00:15:51 CST 2021}

发现问题:部门 id 总是等于员工id
问题所在:部门表和员工表的id字段都叫id,造成冲突
解决办法:将数据库重新规范的修改,并将对应的mapper.xml对应修改即可解决。

Employee{id=102, name='张飞', email='131313@qq.com', gender=0, department=Department{id=1001, departmentName='部门一'}, createTime=Tue Oct 12 00:15:42 CST 2021}
Employee{id=101, name='雄安', email='326@qq.com', gender=1, department=Department{id=1003, departmentName='部门三'}, createTime=Tue Oct 12 00:15:40 CST 2021}
Employee{id=103, name='网我', email='32121@qq.com', gender=1, department=Department{id=1005, departmentName='部门五'}, createTime=Tue Oct 12 00:15:51 CST 2021}
转载请注明:文章转载自 www.mshxw.com
本文地址:https://www.mshxw.com/it/318691.html
我们一直用心在做
关于我们 文章归档 网站地图 联系我们

版权所有 (c)2021-2022 MSHXW.COM

ICP备案号:晋ICP备2021003244-6号