Inner join在连接的时候会选取较小的表作为主表进行循环,减少循环的次数。Left join默认使用左表作为主表进行循环。
可能的原因是连接字段没有在大表上建索引,但是在小表上建了索引,而此时left join的左表是大表,在循环查找过程中走小表的索引,而此时inner join中小表为左表,在按连接字段值相等的情况下去查右表的情况下,不走右表的索引,所以导致inner join比left join慢。
在数据库中,INNER JOIN 关键字在表中存在至少一个匹配时返回行。
具体语法如下:
-from 树懒学堂
注释:INNER JOIN 与 JOIN 是相同的。
1、首先在电脑中打开sql,在外层查询中写上S【elect * From S】查询出学生信息,如下图所示。
2、然后,再以同样的方法找出SC选修表,如下图所示。
3、此时,就可以在这里利用等值连接将S和SC表连接,如下图所示。
4、但是,因为这是不同层级的查询,因此需要Exists谓词将他们连接。
5、运行后,就可以看到这样的结果,如下图所示就完成了。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)