MyBatis多表联合查询查询对于一对多的结果只有一条,SQL语句在数据库中查询结果确实是一对多,但使用MyBatis去查询只有一条数据

血红的双手。 提交于 2020-08-20 06:54:57

使用SQL语句在数据库中查询结果是一对多关系,但使用MyBatis去查询只有一条数据

数据库有三张表:

1.角色表
在这里插入图片描述
2.权限表
在这里插入图片描述
3.角色-权限关系表
在这里插入图片描述
权限表对应实体
在这里插入图片描述
角色表对应实体
在这里插入图片描述
mapper
在这里插入图片描述
以上配置使用SQL语句去数据库查询结果是一对多的,但MyBatis查询结果却只有一条数据,这里就是字段名重名导致的问题,角色表和权限表都有一个id字段,只需要将查询语句稍微修改一下就OK了,采用别名的方式去查询,即把两张表里的id取一个别名,修改后的mapper如下图:
在这里插入图片描述
~~**小建议:在创建数据库表是字段命名最好规范,否则含容易出现类似的问题**













标签
易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!