内连接、左连接、右连接傻傻的分不清楚?到底它们有什么区别呢?
上面的例子我们发现三个结果都一样啊,好像没有区别啊。
它们能叫不同名字当然有区别了?区别在哪里呢?我们增加一条记录,立马就看出它们的区别了。
我们给teachers表插入一条记录,它们就失去了平衡,何为平衡呢?你注意观察数据,会发现插入前,左边的老师表中新增“陈子枢”老师,而课程表中并没有这个老师的课程。也就是“陈子枢”在左边中出现,而在右表中未出现。
此时,内连接就只展示两边都出现的数据;而左连接以左表为主,所以尽管“陈子枢”老师在右表中没有,它也列出来了,只是,其他相关课程的字段为null;而右连接以右表为主,右表的都出现,右表没有“陈子枢”,所以右连接时,就不显示“陈子枢”老师的信息。
猜你喜欢
- 2025-03-19 MySQL惊天陷阱:left join时选on还是where?