MVC中的查询

MVC中的查询分为很多种。
 内联查询
 左查询
 右查询
 外联查询
有两组数组{1,3,4,5,7,9,13,15}和{3,4,7,8,9,13,17}
内联查询(内连接):(inner join),可以这么理解,就是高中时候学数学的时候学交集那一部分,从上面的数组可以看出它们的交集是{3,4,7,9,13}。
如果连接两张表的话,除了两张表共有的ID主键之外其他的都为null。也就是说,两张表里面没有共有的,就会输出null,并不是没有数据,就是数组里面没有数据的null会填空。这里我用数组模式代替

MVC中的查询左查询(左连接):(left join),左查询顾名思义,就是按照左边的那张表来查询,在表里面,左边的ID主键有的就会全部输出,但是右边表的ID主键就不一定全部输出。就是说,左边那张表为准,从上面的两组数组可以知道,左边那组数组是有1的,但是右边那组数组没有,所以输出来的值右边的那组数组就会被null填空,也不是找不到。如果左边表的ID主键跟右边的ID主键一样的话,那么两张表的ID主键都有值;如果右边表的ID主键不跟左边表的一样的话,那么就会根据左边表的ID主键输出,右边表的ID主键没有的就会输出null。
MVC中的查询
下面可以看到,如果两张表按照左查询的方法的话,右边表没有的就会为null
MVC中的查询
右查询(右连接):(right join),右查询跟左查询刚好相反。主要根据右边那张表的ID主键查询,也就是例如上边右边的那组数组是有个数字17的,而左边的那组数组没有,那么数出来的数组值就跟下面的这张图一样,有跟右边那组数组一样的,就输出来,要是右边数组有的而左边数组没有的,那么null就会填空,不出现underfind情况
MVC中的查询
外联查询(外连接):(outer join),外联查询呢就跟内联查询相反,内联查询取的是交集,交集就是取两组数组的公共部分,取数组之间共有的部分,而两组数组只要一方没有的都会输出null;而外联查询取的则是并集,并集呢就是将两组数组合并在一起,就像两栋楼房一样,把两栋楼房拆了,然后盖一栋大的楼房,就是把两组数组所有的字段都输出来,而其中一组数组没有的就会有null来填空
MVC中的查询
老师刚开始讲这个左查询的时候我们都是一脸懵地看着屏幕,什么是左查询?就想。但是接着老师就打开了Excel表格跟我们详细地讲了起来,还以为是挺难的,因为老师在数据库查询输出讲的时候,一点也不懂,但是他教我们简单的例子之后就懂了。就是数组的例子,用数组来比作两张表,然后把结果一放到一起一讲,我们就懂得了,而且还跟我们拓展了,跟我们讲了右查询、内联查询跟外联查询。觉得懂了之后也就没有那么难了。跟着老师的思路走真的挺容易就弄懂老师讲的内容了的。