00:00
好,接下来呢,我们来去介绍的是非等值连接,这个非等值连接呀,它实际上就是在我们等值连接的这个基础上稍微变了一点,变哪了呢?等值连接刚才咱们说就是指我们的连接条件是不是用一个等于号呀,那非等值其实也就是把等于号换成对不等于了,是吧?其实不一定是不等于,总之它不是等于了,有可能是大于,有可能是小于,有可能是其他的条件运算五啊,就是这个意思啊,好吧,那么这个的话呢,不是谁都能做非等值连接的,咱们做一个具体的场景来试一下就行了,好,咱们做一个案例,那其实后面的你也就都会了哈,比方说我想去查询出我们员工的工资和工资级别,好,那工资的话我们知道是不是在这儿啊。
01:00
它的级别在哪啊,好像没有是没有吧?啊没有啊,那这个的话在单蹦的另外一张表里,我还没给你呢啊嗯,在这儿呢,嗯,还藏着呢,是不是在这儿啊哎,那这有一张表,这是创建我们的等级表的那个搜狗语句搜狗脚本啊我在这儿呢,粘过来哈,我执行一下就行了啊执行好它默认的是不是就相当于创建在我们当前库了呀啊好,我们刷新一下,好来看是不是有一个drop gra啊哎,这个就是个等级表,来我们看一下吧,这个等级表的话呢,长什么样子哈,Select星号from job Grace啊啊那这个等级表的话,它里边一共有这么三个字段,呃,第一个字段就是对应的等级编号,第二个是不是就是该等级的最低工资啊,这个是该等级的最高工资,能看明白吧。那么现在呢,他的一。
02:00
思就是说,诶,要去查询我们employees表里面的谁呀,工资还想查询谁呀,Grade level是不是就来自于这俩表啊,啊,那来自于这两个表,这个事情是丁了,那我们就可以把这个语法给写上,好看到哈,Select,呃,工资salary吧,还有一个列叫做level,对不对?好,那查谁你就写谁,这永远是死的FROM2个表也没顺序关系啊,也没有顺序关系,Employees起个别名义可以吧,Job grades起个别名J,好,Where是不是该去加连接条件了,但是这一次连接条件还是等于吗?不是了,那怎么写嘞,你可以这样,你看到哈,我教大家你可以呢,把那个员工表的salary,呃,再加一列吧。
03:00
Employee ID,我们给你查一下from employees哈,哎,这样我们去执行,这是不是它这个相当于我employees表里面的数据啊,哎,那么我们这样哈,我们把它给截一下好,然后咱们在这这样去看是不是看在这儿啊,这个是不是代表员工表的数据啊啊,然后我们这是精简点的,精简版的员工表哈,再来一个。再来一个,那这个就是job gras表了,这行是不是就是它好,我们把这个整过来,咱们连接一下看一眼啊,过来了吧,嗯,然后这个的话就是我们的job gra表,那么它是怎么着去获取这个对应的等级的呢?它这样的,诶最关键的ABCDEF咋没了,那能能看出来吧,能是吧,脑补一下哈,ABCDEF看我写的多好,好,那么现在呢,咱们看一下,其实啊,他就是会拿着我的员工表的这一行,是不是去挨个的匹配我等级表里面的每一行啊,那么什么样子的它就会显示出来嘞,对,它绝对是拿着我的salary这个字段去判断,比方第一行的话,判断是不是大于等于。
04:29
它啊,并且小于等于它,如果满足这个条件,它是不是将对应的A给显示出来呀,能听懂吧,好,如果不满足它是不是再去找第二行呀?哎,看一下是不是大于等于它,并且小于等于它,然后把B显示,能看明白意思吧,所以说这个连接条件应该是拿着我的salary字段去判断是不是这两个字段呀?啊好了,那这个条件就会写了吧,这个地方应该怎么写呢?Where salary大于等于,或者使用between,我们这里面的lowest salary and这里面的highest salary对吧?那现在再去执行出没出来是不是就出来了啊,他这个意思哈,这就是一个非等值连接啊,当然这个非等值连接我们能不能给它也去加什么排。
05:29
序呀,或者说筛选呀,这些能不能呀,哎,肯定呢,比方说and,我想加一下我的级别,呃,Grade level等于A的,我只想看等于A的是不是可以直接这样啊,哎,然后去执行哈,哎,那你看这个就只有24行,是不是都是A级啊啊A级啊是最低的对不对?哎,这个是可以的啊,排序也一样,继续追加就行了,我就不写了,这就是非等值连接比较简单吧,啊,这个填一下哈。
我来说两句