哈喽,大家好,今天我们接着上一期的内容往后讲,那么在上一期的内容当中呢,我们讲到了只查询英和拉特音的这个用法,以及他的一些语法,以及一些的这个呃,使用的这个例子。然后本期内容呢?我们要讲什么呢?呃,要讲这个英和拉特音的这个使用场景, 什么时候使用拉特音音和拉特音什么时候使用这个连接查询?第一个就是我们的 结果及在一个表中,而条件在其他表中的时候我们选择查询。 第二,当结果及在多个表中的时候,我们选择表连接查询。这是我们啊今天讲的第一个内容。第二个内容就是我们这个啊存在,一个是这个 lot, 一个是不存在的这个用法,那么他的 语法是 select。 新芙蓉表明瑞尔 exists, 或者是说或者是 lot of not exists。 那么这是什么呢?就是我们的这个子茶群里面是用的这个 excess 去用。然后这后面呢是什么呢? 新哦,列名不用表二,就只查询你们要的这个结果机。威尔后面表一里面的啊,结果机是否跟我们这个表二里面的这个啊?结果机相同,就是存,存在与否。那么我们先来看一下一个 一个例子,就是我们我们先用例子来倒推他的这个,他的这个啊规律,不然的话 光讲这个规律可能比较生硬。你送我们什么呢?我们还是按照用什么呢?用我们的学生表, 学生表和成绩表做例子啊,我们改造什么呢? select sing from student info。 然后呢? where 什么呢?一颗 exists, 然后呢?这里要什么呢?我们的这个是什么呢? selector, 来看着我们的这个心芙蓉,嗯叫做香瓦斯库威尔,我们的这个,嗯把它叫名叫做叫做 a d s t u i d 等于 j d s t u i d 那么这是我们看下这个结果结, 这个结果题呢,就是我们要找到的就是参加了考试的学生,那么我们怎么来分析这个数据?怎么来分析这个数据,那么这个数据就是什么呢?首先 他把这个第一个,他把 c like 的新 flow 十九等的表的结果及带入到这个纸查询,如果存在,将 外查询,也就是我们的主查询 selector 心 from from 这个 student info 的结的结果结带入到,带入到我们的子茶群,带入到我们的子茶群中。如果 这个只查询中有结果,那么 excess 返回竖,也就是返回的一 t r e 返回针,然后呢?否则 返回 horse, 没有结果,返回 horse, 否则返回 boss, 那么这是他的这个啊,这个用法就是就是在你的这个纸查询当中,如果存在,如果你这个 id 存在于这个纸查询,那么他把你这个记录记录返回出来,返回出来,如果不存在,那就不返回。返回处代表什么呢? 返回数代表 带入行显示出来,否则则不显示。不显示,我们把它叫做隐藏, 不显示叫做隐藏,那么这个里面呢?我们可以看到这是他的标准语法,就是为什么一定要,为什么一定要加这个 条件的,那么我们来看一下不加条件。我们来看一下不加条件,当我们后面不加这个条件,不加这个条件,那说明什么呢?那说明 这个结果机永远为真,结果机永远为真就是什么呢?就是你这个没有条件,那么我的这个结果机说明都是有的,都是有的。你既然 你现在没有跟没有这两个没有关联,就是查找你这里面是否有结果,有结果我就给你显示出来,当然我这里面是有结果的,我的结果永远为真,因为我没有任何条件,那么这个时候 此时显示所有结果结,显示所有结果结。那你说你如果这样的话,我可以加一个调 键呀,比如说我加一个 vr, 接一点,接一点什么呢?接一点是空,接一点是空啊,大于等于八十,那你看这样会有结果吗?我们来看一下啊, 这样的结果机他也是二十九条,因为因为什么呢?因为这个语句他永远为真的,这个语句他是永远为真的,就是他没有没有为假,他永远都会显示出来,永远都会有结果机,此时 依然显示,且此时依然显示所有的结果结。这就是为什么我们要在这个地方要把它关联起来,让他之间有有一个这样的关联,然后通过这个关联与 去让他找到我这个主表当中的结果局是否在这里面存在,是否在这里面存在。这个地方一定要注意,就是就是为什么,为什么我要 为什么我要把这个地方加一个这样的一个呃,关联关系,因为有的地方他在讲这个,这个就是他讲的很模糊,很模糊,你不知道为什么,为什么要这么用,为什么是为什么是这个样子。那么同理,如果是反着来,我们要查,要查 没有参,没有参加考试的学生,查询没有参加考试的 学生,那么就反过来擦,我们家用什么呢?把这个 excess 改成 lot excess, 那这个时候我们来擦, ok, 他就只有一条,他就只有一条。同理,如 如果我们把这个,把这个条件去掉,把这个条件去掉,把这后面的 vr 条件去掉,改成那头,那么他的结果机是为空的是为空的。此时 查出的结果及此时结果此时结果及为空。 没有任何记录没有任何记录。你这个不在里面吗?拉着一个,这是不在里面吗?是吧?那我不在我这里面的结果机,那肯定就是为空的。不在里面的结果机那就是为空的。那同样,如果我给出一个条件,我给出 vr 利尔,我的,我的什么呢?啊?斯科尔,揭点斯科尔啊,大于等于八十。同样他的结果 结果机也是为空的,此时他的结果机依旧为空。此时结果机依旧为空。依旧为空。没有任何,没有任何记录,那么这就是我们的这个,呃,拉的一个拉的 exist, 那么它与我们的这个印象比 就是我们这个什么呢?嗯,和 not in 或者是 not in 以及我们这个拉扯一个 s 的这个比较,我们留到下一次讲,因为这一次 时间已经不够了,我们下次要讲什么?要讲就是我的这个,嗯,我的这个 lot in 和 in 和这个意思是我到底什么时候去选用?我到底什么时候去选用他们?怎么样去让他的嗯,用法更优化?这是我们后面要讲的那种。今天就到。
粉丝1.5万获赞3.4万


那大家好,今天呢我们再来做一个例子啊,就是快速的加总合并的单元格,比如说这边的话呢,我想加一个总分啊,这个的话呢,我想把这个蜀国所有人的分数啊,都加到这里,然后魏国所有人的分数啊加到这里啊,同理吴国的话呢,就加到这里啊, 那我们呢先还是先用 vba 来写一下啊,看看 vba 怎么样来做。 vba 这边的话,它的一个难点是在于说是对这个空白的一个单元格,就是说在单元格合并之后,它下面的部分实际上它是一个空值的状态啊,我们可以稍微看一下,我说我现在声明一个这个数组好了啊, 还是用我们这种当前区域的一个形式啊,把它给附进去啊,我们通过速度是可以看一下的 啊,这个地方我们可以看到它这边是有第二格的话,它是数,而在第三个的时候可以看到它这个是一个空值啊,第四个也同样是空值,也就是它会在第一个啊,就是在合并的单元格里,我们会默认这个值实际上是在第一个出现的啊, 那这样的话我们就知道了,所以我在加组的时候的话,我可以选择把下面的格子把它填满,那这样的话我不就可以啊,对我的这一个值进行一个加组了吗?啊,那我还是选择用字典的一个方式来做一下啊,那这边肯定要跑循环了啊,上面一个竖直行的一个变量, 那就直接直接来执行循环好了,等于应该是从二开始还是跑这种行循环。那这个时候刚刚说了,我们要进行一个判断,如果他的值是空的, 那这个时候我们是要让他的这个值等等于到他的上一个值的 i 减一,等于它的上一个值,等于它的上一个值,那这样的话就我就可以保证把我的这个数组的值全部填满, 那这个时候呢,我们再进行一个加总,也就是对我们的这个啊字典啊字典他的一个数量进行一个加总,那加总的时候其实我们很爱也是进行一个两轮判断啊, 就是说对我的这个字典是否存在,如果第如果是不存在,那这个时候我做的是一个直接添加的一个动作,而如果存在的话,其实我是要在我的 ita 之 上进行一个增加,就是把我的这个国家当做我的 k 制,而我的数量当成是我的艾特值,所以说我们会对这个进行 一个判断,看他是否存在,如果不存在,那我们做的是增加的动作。刚刚也说了,你是 add 把这个数给他增加进去,然后数量的话呢,也就是我们当时的这个数量,也就是 c 列啊 c 列的这个数量把它给加进去,这个时候做的是增加的动作,那否则的话 我的这一个它的一个值应该等于我的这个 它的这个纸加上啊,加上我的这个 c 列的这个纸,对吧? c 列的这个纸就是把它给加上去, 那这样的话呢,我就可以把我的这个获取的这一步给做完了,那获取完之后,其实我应该是把我的数据给填上去,对吧?那这个是在低劣出现,所以我们还是在直行循环,这个也是还是用我们刚刚说的单元格的这个特点啊, 就说他是空值的话,你往上面付,他是付不进去的,比如说像这个第四单元格,第四单元格你是根本连根本没有办法往上面复制的,所以说我们就直接可以用循环从二开始一直跑到 因为这个,呃,我的这个行数啊,跟我数组的这个数量是一样,所以说我可以利用这个变量直接来写啊, 不用再说用这种定位的方式了,或者用这个 ust 这指的行的这种行方式,那就直接是把这个字典调出,是用指的 第一列 di 的 i, 它的一个直属性等于我的这个字典认知的 a 的, 哎,等于我的这一个单元格的这个值啊,那这个的话同同样啊,在 a 列啊,我们这边用的是抓取 a 列当它的 k 值嘛,那 a 列的话它这个地方肯定也是空值啊,也会是空 纸的一个状态。好,那这样的话我们的这个看上去应该是写完了啊,那就是这么多了啊,就是第一步的话呢,还是用字典获取的形式,第二步的话呢,还是把字典给复制啊,走这两步。好,我们来看一下吧,看一下这个这个是否会执行到 啊?可以看到这个时候啊,一个是六百二啊,拉一下看看啊,六百二,然后呢?五百三十一啊,啊,五百三十一,对吧?然后如果这个是多少?六百零八 啊,我们看一下六百零八啊,那这样的话呢,就对我们的这个合并的单元格啊,对他进行了一个呃,这个求和啊,这个代码你看也还是很少, 还是啊看下去好像也比较简单啊,那说完这个 vba 的方法啊,我们还是再来说一下函数的方法好啊,函数其实做这个应该是比 vba 要快一些啊,但是 我们还是用我们刚刚的原理啊,比如说这个地方我们是做了,我先把这个删掉,我们是做了合并,那所以说这个时候的话,当我们合并的他那个后面的纸下不上去,所以说我只需要考虑用我的这个啊,就是先是 这个三个区域啊,减去我的后两个区域,我不就得到我的上面这个区域吗?对吧?所以我们的这个函数的原理啊,应该是从这个方向去考虑,这个时候就可以等于啊用一个萨姆 啊,那一开始我们还是从 c 列开始啊, c 列到一直拉到下面,我们应该要把后面东西锁住啊,因为你每次往下拉的时候的话,他的前面的这个肯定是要变的,而后面的最后一行这个位置啊,他是要固定住的, 把它给锁住,然后紧接着的话再减去,减去这边的话也是一个求和, 那求和的话我们还是就是在低列了啊,应该要从第三开始,因为这边是从第二开始吗?那这边就要从第三个开始,就是一直往下错一个啊,就是每次错一个,而合并的单元格的话,他会返回成空吗?那这个时候还是第一, 也是要选择最后一个,我们还是把它给锁住, 这样然后的话直接来完成。通过这样的话,我们也可以看出来,他的一个计算的方法也是可以直接实现刚刚的效果。这个可能稍微 我觉得从理解的角度来说到这个函数可能要比 vba 稍微难理解一点啊,我们不妨可以通过看一下,这个的话是一一三九啊,对吧?这个一三九,其实这个一三九指的就是后两个相加,后两个三 想一下就是一三九,你像这个嘛,对吧?你把这个也进行一个这个计算啊,能看得出来啊,他是这个六百零八啊,其实应该这样看啊,应该是这样去看他里边的这个啊,这个应该是会 更直接一点啊,可以看到啊,对吧?这全是零吗?然后这个是五三一六零八,对吧?那五百三十一跟六零八吗?只有这两个相加,剩下几个直接是零了啊, 这个的话就是说可以通过这种方式啊,求出我们合并单元格的一个值啊。那以上呢,就是对这个合并单元格的一个求和的一个分享啊,大家有兴趣呢也可以练习一下。



大家好,这节课我们来讲易腐,加上三个逻辑运算的函数,可以综合使用,那可以根据多个条件来输出不同的结果,比如说对于学生的成绩,根据学生的成绩来输出相应的这个评语, 或者说根据某几个条件来输出符合一类人的这个个数,比如说根据他的工龄,根据获奖的情况,根据职称等等来输出某一类员工是否符合这个条件。那我们以这个考试成绩为例。 哎,我们上午呢介绍了使用 and or 或者 note 这三个函数呢,输出的结果是 fours 或者 too, 那这个呢?如果你不使用衣服函 数,只能输出 fors 或者 q, 那我加个一凡人数呢?我就可以直接在这里输出他的评语,直接可以输出评语来,那就不用显示满屏的这个 q 或者 force, 比如说我想直接输出他是是不是全优学子,我就可以直接 把这个函数改一下,等于一辅啊,一辅,然后 and 就所有的三门课都大于等于九十,那这里就可以输出一个,好,输出一个, 太棒了,荣获全优学子啊,就可以直接给他输出个频率,否则的话就输出一个,继续加油。好, 这样的话,凡是被评为全优学子的,那就输出了一个,太棒了,荣获全优学子,否则的话就输出一个,继续加油。 你们发现这就把相当于把 too 用这个来代替,把 force 用这个来代替,那同样的学有所获,这里呢,我们也是一样的,那你可以直接在这里,就相当于是把上午的这个哦, and 或者 note 的那些函数,把它 作为一函数的判断条件,判断条件啊,如果 如果符合的话,那么我们就输出一个叫学学有所获,这里 呢再说这个,继续加油。好,我们点击确定,然后呢他同样的会根据我们的结果输出相应的评语啊,这个呢,就不用我们再去转换一下,那这里是否需要补考 也是一样,你就把这个 note end 加到衣服里面来,那么给大家说出一个评语,直接在这里写衣服好。然后呢逗号, 注意这里的区分,参数和文本的全部要用英文状态下的逗号和双引号,如果他需要补考,那我们就说,哎呀,需要补考, 如果不需要补考, 那就可以直接 通过一幅函数把这个结果输到这个单元格里面来,就更直观,否则的话, 否则的话,那这里看到 force 和趣味的时候,我们人呢还需要转换一下,那这个呢,也是一样哎,就是我们可以用一辅,那可以有多个参数在里面,你看 end, 他就可以囊括多个参数在里面, 包括后面的也可以是继续是公式,或者继续是函数,甚至是嵌套的函数。我们刚才说了,一幅函数可以嵌套六十四层,最多在一个公式里面嵌套六十四层 下。后面的课程呢,我们还会给大家专门介绍一幅函数的嵌套啊,希望大家跟我一起继续来研究 一幅函数,尽早翻阅一幅函数的这座大山,你会发现把一幅函数用好了,然后结合其他的嵌套,能解决我们工作当中很多的比较复杂的这种 筛选,或者说一些信息的判断,每次六分钟让你溜起来。