SQL:Join的测试和分析
Join的测试和分析
Join分为三种:inner Join,Left Join,right Join
⾸先,我觉得要知道⼀个概念:临时表或者说虚拟表,Join的作⽤就是⽣成⼀个虚拟表,因为我本⾝专业并不是计算机,更不是编程。所以⾛了很多弯路,直到⽤了很多次数据表的关系之后,才明⽩这个道理。
1,Inner Join
Select * from Table_A inner join Table_B on Table_A.Model = Table_B.Model
虚拟表如下,取决于左右表格Model相同的记录,虚拟表总⾏数=左右表格乘法累加xy=x1y1+
多表left join
2,Left Join:
SELECT fcst.*, bom.*, [BOM]![Qty]*[FCST]![Qty] AS REQ FROM fcst LEFT JOIN BOM ON BOM.Model = FCST.Model;
虚拟表结果如下图:
JOIN这个“单词”中左边全部出现在虚拟表中,右边⽆匹配时会:只列左,没有就空⽩,虚拟表⾏数=n+xy,n=仅存在于左表的记录
3,right Join:
参考Right Join,需要注意的是Left join看左边Table_name,Right Join以右边Table_Name为主。
另外,ON的等于符号没有左右问题,可以A表=B表,也可以B表=A表
总之,对于像我这类初学者朋友,⼀定要有虚拟表格这个概念,否则SQL学起来好痛苦,希望⼤家少⾛弯路,别像我!

版权声明:本站内容均来自互联网,仅供演示用,请勿用于商业和其他非法用途。如果侵犯了您的权益请与我们联系QQ:729038198,我们将在24小时内删除。