首页 > mysql leftjoin查询结果比主表多出几十条

mysql leftjoin查询结果比主表多出几十条

什么原因?怎么去重复


A表 left join B表

A表是主表?? 还是 B表是主表??

有没有对应关系?? a.id = b.id 限制加了没有??


参考资料:
http://www.xumenger.com/sql-j...

举个例子你就知道了

    A表:                          B表:
id   | name                id | email
 1   | tom                  1 | anything@126.com
 2   | mary                 1 | anything@163.com
                            1 | anything@gmail.com
SELECT a.* FROM talbe_a AS a
LEFT JOIN table_b AS b ON a.id = b.id

如上,最终结果会有多少条数据呢?


一对多的关系


你这不叫重复,你这是右表中的数据有相同的id,就是你连接的条件字段相同


left主表一般是多条记录的连接单条记录
比方说:借阅记录表:外键【读者ID】 外键【图书ID】
left显示的记录数是跟主表有关系,也就是说主表有几条,如果不加条件限制,结果跟主表条数一致


谢谢邀请。是你左右表的主键外键对应的问题

【热门文章】
【热门文章】