00:00
呃,今天呢,咱们主要的任务是这些,咱们先去看一下,我们今天呢,主要来去介绍,就是DQL语言里面最后的一部分,是不是叫做联合查询呀,啊,我们就把它给说完了哈,那么说完了这个之后呢,我们可以去讲这个增删感了,就是DML语言啊,那么这个说完了之后呢,我们还有一部分时间,我们可以把DDL语言的空格表的管理给说了,这是我们今天的任务啊,也就是也就是查询的最号以及DML以及DDL的一部分,有的说啊,这这么多呀,这不多哈,这些都合起来都没有连接多啊,也就是咱们查询是一大部分对不对,剩下的那都是小意思了啊,东西挺少的,东西挺少,行吧,那咱们先去说一下这个联合查询啊对,我们来看一下什么是联合查询,那这个的话就是我们最后一个进阶了,在查询里边我们叫做进阶酒了,对不对啊进阶九。
01:00
联合查询,那联合查询的话呢,它涉及到了一个关键字叫做union,呃,一说到这个关键字的话,可能我们就想到了,呃,这个联合国是吧?啊,Union的话是不是就是联合的意思呀?啊,那它翻译过来的话称为联合或者说合并,那么其实它的这个本意呢,就是将我们多条查询语句啊,将多条查询语句的结果合并成一个结果啊,换句话说就是实际上呀,我这种联合查询就相当于里边包含了多条查询语句,按说每条查语句是不是都应该有一个小结果呀,那么我如果有你这样一联合,那么它会把这多个结果合并成一个结果了啊,一个表格就这样一个意思,那我们先举个例子吧,看一下效果哈,那我在这举一个野猪的这样的一个案例,你比如说啊,举一个简单简单的哈,就还有我们的这个。
02:00
Employee吧,举个例子,嗯,假如说我想去查询一下我们的部门编号大于90,或者说我们的邮箱中包含A的员工信息,能听懂意思吧?啊,那这个是查询部门编号大于90,或者是我们的邮箱,邮箱中包含A的员工信息,是不是有两个条件呀?那么当然之前咱们也可以做,对吧?呃,之前也可以做,那之前我们要做的话,那就是select的星号from我们的employees表where后面的条件是不是要放两呀email like什么什么对不对啊,这样写哈啊A,然后再去on,谁来department ID大于90没问题吧?啊,我们先看一下最终结果是67行对不对啊,67行这是之。
03:00
还好,那么假如说我们要用联合查询,它其实意思是说我们可以把这个条件拆分成多个,拆分成多个,那你看我可以这样去写了,哎,我把这弄一下啊,好,Select星号,From employees well email like like,哎,然后这个里边是包含A的,对吧,这是一个了吧,嗯,然后我再用上什么官字呢?Union,注意这个地方我没有加分号,我没有加分哈,然后呢,我再来一条查询语句,Where,谁嘞,Department ID干嘛呢?大于90,哎,这个地方加分号,因为这个分号不是说结尾的,它而是结尾的整体能看明白吧?哎,那好了,我现在再执行刚才的结果是67行吧,哎,我现在执行是不是还是67行啊?哎,这就是联合查询。是不是就是把就是把对对就是相当于把这个大的这个条件是不是拆分成多个了呀,啊拆分成多个,这样有什么好处呢?对,有的说这样感觉没啥好处是吧,就是就是这个语法,因为还不太复杂哈,假如说我这个条件更加多个,能听懂意思吧,更加多个,比方有六七个啊,那么这样的话是不是就容易乱呀,哎,这个时候呢,我们就可以这样拆分,其实就是一个拆分法嘛,对不对啊,然后要注意,其实每一个查询它都是一个独立的查询语句,对不对,本来是一条独立的,我通过应印一合并,它就变成一个完整的了,就变成了一个结果啊,它这样的一个意思啊,好吧,那么我们这个联合查询的语法其实也就出来了,这个语法就是好看到啊,查询语句一,然后再用谁union,然后再去查询语句二是。
04:58
这样来写呀,可不可以哥哥可以啊,可以继续有ion,可以继续有ion,第二点我就不写了啊啊,那么它是这样的一个意思哈,语法上也不是特别难,那么接下来呢,我们再说,那我使用它一般来讲用在什么地方,像这个地方大家可能没啥感觉是吧,虽然的确感觉有的时候可能会简单一点啊,但是可能觉得还值得用它嘛,可能有的同学为语法考虑就觉得不值得用它了,但是往往有一些地方你不得不用它,比如说我举一些例子啊,我写到这这个叫做应用场景啊应用场景呃,举个啥例子呢,你比如说我这儿呢,单独了有一张表啊,提前呢,我做过一个这个叫做tca表,哎,这个表里边保存的是这个中国用户的一些信息啊,123是吧,然后呢,我还有一张表,哎,这个是不是保存,就是外国有人。
05:58
的一些用户信息啊,这个里边涉及到的列呢,都有ID name,还有性别,对不对啊,那么假如说我有一个需求哈,注意我有一个什么需求呢?我写到这个地方来,好注意,那么现在呢,我想让大家去查询我们所有就是中国用户中的中国用户,用户中年龄大于12岁的信息啊,这是啥呀?用户是吧?嗯,啊,年龄大于12岁的信息,然后以及以就是外国用户哈,咱们也别管是哪个国了哈,中也是年龄大于12岁的用户信息,能听懂奇迹吧,那我们知道中国用户是不是存在这张表呀,对吧?啊,这个没有年龄是吧?嗯,那我们就找个性别吧,行不行啊,那就是性别。
06:58
作为什么的呢?男的可以吧啊,也就是中国用户男性的,这不就得了吗?傻了,是不是男性的信息,这个外国用户是不是也是男性啊啊,男性的信息,好吧,那我们看一下这个表里边是不是也有对应的一个性别呀?啊,能看明白奇琪吧?哎,这个我们应该怎么去做,他最终是不是要的是一个结构集啊,要的是一个结构集,好,一起做一下吧,Select信息信息的话当然可以写个星是吧,或者我把这个里边都写上也没毛病,C name可以吧,逗号,Thanks from我们的TC well,谁来c sex等于啊,不是,这个里边不叫mail,这个里边叫什么,是不是就叫男女啊啊好,然后再怎么样,You,你一下跟着走哈,Select。
07:58
和谁,它里面都有谁呢?TID,其实我故意的是不是让这两个表的字段名不一样啊,哎,就故意让它不一样的哈,T name逗号T真的from t where,我们的T真的等于maal对吧?分号结尾吧,可以查出来吧啊这样的话是不是就是所有国家的男性的信息我们都能列出来了,你像你像这种情况下,我们是不是就是用英饮食最好的解决方案了,哎,那这种是什么意思呢?这种是说当我们要查询的结果是不是来自于多个表啊啊来自于多个表,而且这多个表之间他们有一定的连接关系嘛,它像我们之前做的那种,什么格瑞ID,什么等于那边格瑞是不是没有那种连接关系啊哎,像这种情况下,我们就可以用联合查询能听懂吧。
08:58
再举一个例子,比方说平时咱们在外部网站中,经常全站搜索,你输入一个词语,是不是他把你这个,呃,网站中所有的跟这个词语有关的信息都给你罗列出来呀,对吧?呃,这种叫热点搜索呀,或者等等哈,那你想呀,他整个网站它不可能是一个数据库或者一个数据表,对不对,它肯定有好多好多的表,那所以它是不是就涉及到要查好多好多的表啊,哎,查每张表里边包含你输入的这个关键词,能听懂吧,最终是不是合并成一个结果给你返回出来呀,能听懂意思吧,那那所以这个时候也会用上了联合查询,所以联合查询其实用的也挺多的啊,所以说它的应用场景是啊,当我们要要查询的这个结果来自于几个表呢?一般是要查询的结果来自于多个表啊,多个表,且我们多个表是不是。
09:58
没有直接的这种连接关系啊,但那么但我们查询的这个信息一般是不是一样啊,啊,查询的信息一致啊,一致时我们就可以用联合查询,好前面这句话大家应该都明白意思,这句话可能不明白什么叫查询的信息一样,就以它为例吧,我这个表要查的是不是也是这些信息啊,你这个表查的是不是也是这个信息啊,这个时候我们一般用联合查询。
10:30
好,那么这就说完了,我们联合查询什么时候用了,对不对?那么接下来呢,再给大家说一下我们联合查询需要注意的事项。注意看了哈,瞪大眼睛。
我来说两句