inner join跟where查询的区别

时间:2023-12-15 10:46:02

inner join跟where查询的区别

inner join跟where查询的区别

inner join跟where查询的区别

就查询结果是没有什么区别的。但是在网上看到一篇是讲到效率问题,暂时不是很理解

结果一样,查询效率明显的区别,一个两个集合放在一起,一个是匹配字段查询。
比如统计表:
姓名 | 工作
===================
张三 | 写报告
------------------------------
李四 | 焊接

人员名单:
姓名 | 工号
===================
张三 | A520024
-----------------------------
王五 | A002532

直接把俩集合放一起查询会变成
统计表.姓名 | 工作 | 工号 | 人员名单.姓名
=============================================
张三 | 写报告 | A520024 | 张三
---------------------------------------------------------------
李四 | 焊接 | A520024 | 张三
---------------------------------------------------------------
张三 | 写报告 | 王五 | A002532
---------------------------------------------------------------
李四 | 焊接 | 王五 | A002532

2*2变成4种记录,他要经过这个计算,再给他个条件
统计表.姓名 | 工作 | 工号 | 人员名单.姓名
=============================================
张三 | 写报告 | A520024 | 张三
能是一样吗,这样查询效率会慢上记录数*记录数倍?
连接姓名查询后会变成:
统计表.姓名 | 工作 | 工号 | 人员名单.姓名
=============================================
张三 | 写报告 | A520024 | 张三

1*1匹配。直接去找名称了
这就是为什么SQL关键字要在语言中起作用,如果没有关键字也能做到某些查询结果,但是未必真的能达到Server服务器带来的效率