注册电气工程师考试科目,唐山网站怎么做seo,目前最流行的拓客方法,汽车网站网页模板一、问题
在涉及多表查询的时候#xff0c;使用collection元素来映射集合属性时#xff0c;出现了只能查询到一条数据的情况#xff0c;但用sql语句在数据库中查询会有多条记录。
二、原因
如果两表联查#xff0c;主表和明细表的主键都是id的话#xff0c;明细表的多条…一、问题
在涉及多表查询的时候使用collection元素来映射集合属性时出现了只能查询到一条数据的情况但用sql语句在数据库中查询会有多条记录。
二、原因
如果两表联查主表和明细表的主键都是id的话明细表的多条只能查询出来第一条。所以涉及查询所用的表的主键的命名不要相同否则会混淆。
三、解决
如果关联查询的两个表的主键已经相同了如表早就已经建好了现在也不可能改表字段了那么只需要查询时给关联表查询字段给个不一样的别名即可。
!-- 通用查询映射结果 --resultMap idUserResultMap typecom.gd.mqtest.domain.Userid columnid propertyid/result columnname propertyname/result columnage propertyage/result columnemail propertyemail/!--collection propertyuserDetails javaTypejava.util.ArrayList ofTypecom.gd.mqtest.domain.UserDetail--!-- id columnt_id propertyid /--!-- result columnuser_id propertyuserId /--!-- result columncolor propertycolor /--!--/collection--/resultMapselect idselect resultMapUserResultMapselect u.id, u.name, u.age, u.email,ud.id t_id, ud.user_id, ud.color from user u join user_detail ud on u.idud.user_id/select