Mybatis多表联查List集合只有一个值

问题描述

查询user表的时候,联查role表,role是一个list集合,数据库有两个值,但是查询出来只有一个值。

<resultMap id="ItemResult" type="com.hht.csgo.domain.MyUser"><id property="id" column="id"/><result property="username" column="username"/><result property="password" column="password"/><result property="money" column="money"/><result property="enable" column="enable"/><result property="lastLogin" column="last_login"/><result property="stockId" column="stock_id"/><result property="createTime" column="create_time"/><collection property="roles" javaType="java.util.List" resultMap="RoleResult" />resultMap><resultMap id="RoleResult" type="com.hht.csgo.domain.Role"><id property="id" column="id"/><result property="roleName" column="role_name"/>resultMap><select id="selectUserByUsername" resultMap="ItemResult">select u.*,r.role_name,r.id from csgo_user uleft join csgo_user_role ur on ur.uid=u.idleft join csgo_role r on r.id=ur.ridwhere u.username=#{username}select>

在这里插入图片描述

问题解决

发现应该是因为role的id与主表id同名,导致覆盖掉了一个数据,将role的id设置为rid后解决问题。

在这里插入图片描述
在这里插入图片描述


本文来自互联网用户投稿,文章观点仅代表作者本人,不代表本站立场,不承担相关法律责任。如若转载,请注明出处。 如若内容造成侵权/违法违规/事实不符,请点击【内容举报】进行投诉反馈!

相关文章

立即
投稿

微信公众账号

微信扫一扫加关注

返回
顶部