我是小酱油啊 2019-11-21 19:51 采纳率: 0%
浏览 147

mybatis两表连接查时,为什么必须要查主表id才能拿出数据,不然只返回第一条数据,那个大佬知道原理是什么??

```

    select s.sid,s.sname,s.sage,s.team,s.role,ss.zong from students_copy s LEFT join score ss on  s.sid = ss.sid










    <association property="score" javaType="cn.kgc.tangcco.hsl.pojo.Score">         
        <result property="bishi" column="bishi"/>
        <result property="jishi" column="jishi"/>           
        <result property="zong" column="zong"/>         
    </association>      
</resultMap>
  • 写回答

1条回答 默认 最新

  • 流华追梦 Java领域新星创作者 2024-02-04 16:42
    关注

    连接的本质就是把各个链接表的记录都取出来依次匹配的组合加入结果集并返回给用户。
    连表查询的时候,第一个需要查询的表叫做驱动表,驱动表的话,只需要选取代价最小的那种方式去单表查询就好了。 针对从驱动表产生的结果集加入中的每一条记录,分别需要到t2表中查找匹配的记录。 此时第二个表就是被驱动表。

    评论

报告相同问题?

悬赏问题

  • ¥20 sub地址DHCP问题
  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错
  • ¥15 Matlab编程问题
  • ¥15 训练的多模态特征融合模型准确度很低怎么办
  • ¥15 kylin启动报错log4j类冲突
  • ¥15 超声波模块测距控制点灯,灯的闪烁很不稳定,经过调试发现测的距离偏大