今天我们讲解 have in 函数, have in 函数如何使用,通过一个视力给大家演示,这是一张职员信息表,这是职员所在的部门编号,这是职员的工资列。 我们需要得出这样一张报表,每个部门每个月所发的工资总和以及总和大于九千。 这里边有两个关键信息,第一个是每个部门所发的工资总和,第二个是总和要大于九千。请看我们这样写 select。 查询关键字后面写列名称,这里我们写 d, e, p, t, r, o。 部门编号逗号后面写萨姆。这是一个合计函数,用于求工资总和,括 号里面写需要求和的列名称,这里我们写 seller。 工资列,后面写 form。 查询关键字后面写表名称,这里我们写 emp。 职员信息表, 我们要得出每个部门的工资总和,所以需要对部门进行分组,所以后面需要写分组函数。 grubby 后面写需要分组的列名称,这里我们写 d, e, p, t, r, o。 部门列。 因为我们还有一个条件是每个部门所发的工资总和大于九千,这里我们就要用到 happy 函数, 所以后面写 have you 是关键字,括号里面写条件语句,这里我们写萨姆。括号里面写 seller 大于九千。这个参数的意思是 每个部门工资总和大于九千。现在给大家解释下这句代码的意思。查询 emp 表,并对部门列进行分组,以及分组后部门工资总和大于九千。 最后显示部门编号和每个部门所发的工资总和。选中执行代码,按快捷键 f 五执行,执行成功。 每个月工资总和大于九千元的部门有两个,二十号和三十号部门, 我们这张表总共有三个部门,有一个部门的工资总和没有超出九千,所以没有显示给大家查询显示,大家可以做个对比,我们把这一段复制粘贴,现在选中执行代码,按快捷键 f 五执行,执行成功,大家对比学习。这个是每个部门工资总和大于九千的显示结果,这个是每个部门工资总和没有条件限制的显示结果。 这里有的同学就会疑问,条件判断语句不是写在 y 二子句后面吗?写 y 二条件判断就可以了,为什么还要写 havin 函数? 这是我要给大家解释和强调的。在 c 口语句当中, y 二关键词不能和合计函数一起使用,所以我们要用 havin 字句,写 y 二字句就会报错。下一讲我们讲解 view 试图。
粉丝1148获赞4183

各位小伙伴们大家好,欢迎来到数据与智能小课堂 上节课我们学习过了什么是连接,并展示了连接两个表的势力。这节课我们来看一看如何连接三个或者更多的表,以及讲解关于字连接的内容。 其实呢,连接三个表和连接两个表的方法是类似的,但有些小小的不同。 对于两个表的连接呢, from 字句中包含两个表明和一个连接类型,以及一个用于定义如何连接两个表的昂字句。对于三个表的连接呢,在 在这个 from 子句中呢,就会包括三个表和两种连接类型,以及两个 on 子句。那为了说明这一点呢,我们写一个查询返回客户的 ct, 注意城市名呢,它不存储在 hs 表中,而是通过 ct 表的外界进行访问。 下面呢就是两个表的定义了,第一个是额就 s 表,第二个是 ct 表。 那为了打印出每个客户的城市,那就需要使用 address id 列,从 customer 转到 address 表,然后再通过 cdid 列由 address 表转到 cd 表。 看到下面这个查询,也就是 from customer, 然后 in a join ajash, 然后在 inner 胶印 ct。 对于这个查询呢,在 from 子句中有三个表,两个连接类型和两个 on 子句,所以看起来还蛮复杂的。乍一看呢,表在 from 子句中出现的顺序好像很重要, 但是其实你调换表的顺序呢,也可以得到相同的结果。下面这三种查询语句返回的结果都是相同的, 看这里的 from 子句后面跟的表不同,只要相应的更改连接条件,后面的表和 on 子句中的连接条件就可以啦。 那么有人就会问了,连接顺序重要吗?那如果你不明白为什么 customer 表和 just 表 ct 这三个表查询的三,所有三个 版本都会产生这相同的结果,那就请记住,折扣呢,它是一种 非过程化的语言,也就是说,他,他只要描述需要检索的内容以及涉及的这个数据库对象,而他以何种方式执行查询,则是由数据库服务器负责的。 输出服务器呢?他使用从数据库对象收集的信息,从三张表中选择一个作为起点,那被去被选择的表呢?就被称为这个驱动表,然后确定其他连接表的顺序。 因此表在这个 from 子句中出现的顺序并不是很重要。但是如果你想要在这个查询中以特定的顺序来连接表呢?就可以按照需要的顺序将 表排列好,然后指定 my circle 关键字, stayed joining, 或者或者说这个 circle server 中的 force order 啊,或者说这个 orico 中的这个 order 的 等等。那比如说,我们要告诉这个 macicle 数据库使用 cd 表作为这个驱动表,然后再连接 gs 表和 cosm 表,就可以使用下面这个语句了。 看这边使定了这个关键字,这个 street join, 然后我们 from c d, 再 join address, 再 join customer, 那么服务器就会使用这个 cd 表作为驱动表了,然后再连接 address 和 customer 表了。 前面介绍了几个包含多个表的查询视力,但是还有一点值得思考的是,如果某些数据局是由子查询生成的,那该怎 怎么办呢?其实紫查询是我们后面会重点介绍的内容,但是我在前面的这个 from 子句中呢,已经介绍过了紫查询的概念,那么我们下面就写一个查询,将这个 caster 表与这个 address 和 cd 表的紫查询相连接。 那看第四行,这是第一个子查询,他的别名呢,就是 addr, 他查找位于 carry foreigner 的所有地址。 外部查询呢,就是将子查询的结果连接到 customer 表,已返回居住在 carry funnier 的所有客户的名字啊,姓氏啊,街道地址啊和城市啊。虽然可以不使用子查询呢,而是可以而是通过简单的连接三个表 来编写这个查询,但有时使用这个一个或者多个词查询呢,对于性能啊,可读性啊都这种方面的提升都是有好处的。 那我们如果想知道这个内部发生了什么,就可以单独运行子查询了,并且查看结果。那下面这就是上面这个视力的子查询结果了。 这个结果集包含所有九个位于凯瑞佛尼尔的地址。当通过 gsid 列连接到 customer 表时,结果集就会包含有关这些地址的客户信息了。那如果要连接多个表呢,可能会需要同, 可能会需要多次连接同一个表,比如说在视力的数据库中,演员通过这个 film actor 表与他们出脸,与他们出演的电影相关联。 如果要查询出现两个指定演员的领篇呢,就可以编写下面这个查询, 也就是将 film 表连接到 film actor 表,然后再将 film actor 表连接到 actor 表。 也是这边 from film inner join film actor, 然后在 inner join actor 这个查询呢,返回了所有出现了演员 cat 和或者这个酷把的电影。但是如果你要检索同时出现这两个演员的电影呢,就需要在 film 表中找到在 film actor 表中有两行数据的所有行, 其中一行与 cat 相关联,另一行与哭吧相关联。因此呢, 你需要你需要两次包含 fiomacter 和 acter 表。每个表呢,都要有不同的别名,以便服务器知道你在不同的纸具中引用的是哪一个表。 就是我们下面这个查询了。我们首先 from film 给它取别名为 f 一,然后连接 film actor 表,取别名为 f a 一,并且添加连接条件,也就是两个表中的 film id 是相等的, 然后再连接艾特特表,给他取别名为 a 一,然后再加上连接条件。然后 呢,再一次包含 film actor 表,给他取别名为 f a 二,加上连接条件。再次包含 actor 表,给他取别名为 a 二,再加上连接条件。那最后呢,就是我们的过滤条件了。 那我们可以看到两位演员呢,他出演了五十四部不同的电影,但是他们只合作过两部电影,因此多次使用了同一个表,所以视力中使用到了表别名。 好的,接下来我们来看一下四连接。其实呢,我们不仅可以在同一个查询中多次包含同一个表,而且还可以将一个表连接到它本身。 刚开始呢,我们可能会觉得这样做比较奇怪,但其实这样是合理的。有些表呢,他包含指向自身的这个外见,这意味着呢,他包含指向同一表中的主见的列。 虽然这个我们的赛克拉数据库中并不含包含这样的关系啊,但是我们可以假设费用表中包含了这个这一列, 他指向这个电影的负极,比如说这部电影呢,将会使用这一列来指向负极电影。 如果我们添加这个附加列呢,那么表的结构就会如就会如下,在这边添加了一个新的列,使用银 sir 的语句就可以了,指明它是指向自身的这个外界。 那么使用字连接呢,就可以编写查询解锁有钱赚的这些电影了,以及电影钱赚的名字。 那像这个查询呢,就是使用刚才我们所说的这个这一列的外键,将 film 表字连接,并指定表别名 f 和 f, p, r, n, t, 以区分各个表的用途。 那我们这节课就讲完了,我们下节课再见。本视频由数据与智能团队出品,欢迎大家关注数据与智能公众号,获取更多精彩内容。

买车后当中如何去创建表?这样的情况,那下面呢跟着我们的步骤去走哈,大概呢会需要一分钟左右,那现在这里啊,我们点一下,选中当前的一个数据库,再点右键,在这里呢,我们找到一个啊,创建新的表,好,这个时候呢,我们点击完成之后会打开一个什么面板,在这里呢,我们就要输入一下啊,这里呢首先有一个名称,我们给这个表呢,就比如啊,我们这张用户表,这里呢给他起个名称叫 user 啊,有 users, 然后呢注注射,我们写上什么用户表,用户表,然后这样的情况,那现在呢,这个表当中有什么样的一些字段,是吧?那这是我们非常关心的哈,这也是很多同学 不会做的一件事情。那在这里呢,首先点一下添加,然后点开添,点击完添加之后呢,就会增加一行,那这样子,那首先第一行字段是什么呢?用户表当中第一个字段叫 id 啊,首先 id, 然后呢他这个数据类型,我们用 inter 的引导,因为这个这个这个这一列呢,需要设计成指增的哈 啊,需要设计成一个组件,这样的情况,所以呢不允许为空,把这个给去掉就 ok 了啊,然后他默认值,我们可以给他什么呢啊,这里也可以给他啊,也可以不填啊,可以填上一个递增就 ok 了。 这样的一个情况,这是第一列就完成了,第二列是干什么呢?就是一个用户的一个名称叫 user name 啊,用户名,然后呢用户名呢?我们知道啊,它的数据类型呢,是字符这类型的,所以我们选择哈叫 text, 当中 watch 哈是长度是五十个,然后呢?后面呢?都可以这样去,这样就 ok 了哈,这是第二列,第三列是什么呢?我们去添加一下。这个什么呢?叫 password 啊,就是什么?就是密码哈,密码,然后这个密码呢,也是一个制服的类型的,这样的情况非常简单哈,这是第二类叫什么?第三类是什么呢?就是一个什么用户的一个性别叫 sex, 而是 e x 哈,然后呢,性别呢?一般情况下都是选择的啊,男或女都是用单个制服啊,单个数字来去表示的,所以我们处在这个 啊,在整数类型当中,我们选择一个啊,一个数据类型就 ok 了。这样的情况,当然呢,我们可以通过这样的方式举一反三,增加更多的列,都是没有任何问题的。那下面呢,这个我们呢,再给大家去举这么四个啊,就 ok 了。然后下面呢,我们还需要再做一件事情。做什么事情呢?我们需要再去建一个锁引啊,这里呢,给大家去建一下,这个锁引呢,我们需要建成一个什么样的呢?建一个 主键哈,这个主键,然后这里头选择一下哈,选择主键,然后呢,选择完主键之后呢,我们需要将第一列设置完成。主键怎么去设置呢?选中这一列叠入键,然后呢?啊,创建,所以哈,创建,所以 加入水印都可以的哈,是加创建水印也可以,加入水印也是可以的哈,我们加入一下,这样的话,这一点就完成了。呃,现在呢,我给大家去验证一下哈,验证一下,怎么去验证呢?在 creat 代码当中,可以去看一下哈,这 creat table 啊,表明 user, 然后第一列呢是 id 是吧?不允许为空,是自增的啊。第二列是 username mocha 啊,不允许为空,默认为零。第三列呢, password 这五十个字符,这样的情况,然后呢还有个性别是一个什么呢?一个整数类型的可以选择的哈,还有个组件 id 对不对?然后后面呢是一个用户表,还有个什么默认的一个什么一个编码哈,这样的情况,那现在呢,我们通过这么简单的一分钟左右,两分钟左右的时间给大家去演示一下怎么去串联一下表,那现在我们串联这个表之后呢,发现啊,这个邮政内蒙 password, sex 这里边都是不不为空的啊,都是不为空的,那下一步怎么办呢?我们需要去保存,在我们底部 有个保存按钮啊,我们点下保存, ok 了,那此时此刻在我们这个数据库当中,我们就能够看到这样的一张表啊,就能够看到这样的一张表,然后呢我们可以通过查询语句去查询,我这里呢给大家演示一下啊, 然后当我们写完这个查阅语句之后呢,点下查询,我们就可以看到哈,这里面是没有任何数据的,也是说明什么?这张表我们已经算好了,关于卖在满社会当中如何去算的表,你学会了吗?

今天我们讲解如何使用色扣语言创建表,对出选者来说,首先要知道表创建在哪个数据库,如何设置,请看演示。色扣语句就写 usb 这个关键字, 后面更的是数据库名称,执行命令就可以 use madb, 这句话的意思就是将当前数据库设置为 madb, 还有一种方法就是用鼠标在这里点请看。将 madb 数据库设置成当前数据库后,我们开始创建表。 创建表的语法是这样的,可以推推宝,这是关键字,后面跟的是表的名称。表名称自定义,这里创建一张学生信息表, 表的名称叫死丢等层,英方没审,后面跟括号,这是语法就这样规定的,我们就必须这样去写。 表示由列和行组成,括号中定义的是列,这里我们就创建三列学生姓名,年龄,地址。 练,后面跟的是练的数据类型。蛙叉重除的是可变长度的字符,硬的重除的是整数 数据类型有整数、小数字符、二进制货币日期、特殊数据类型,后面我会有意见,专门讲常用的八种数据类型,这里就不多做介绍了。选好以后,选中代码,按 f 五快捷键 执行命令,这样我们的表就创建好了。请看我们查询一下表中的数据。 clus 新 frome 这条语句是查询数据,表中的数据, 查询是数据库非常关键的一部分,后面我会详细的讲解。今天我们学习的重点是创建表和删除表,对于这条语句在这里也不多做解释。 选中 f 五执行命令,我们的表中现在没有数据,只是创建了一个表结构, 我们给增加一条数据,看一下效果。影 st 英兔这条语句是向数据库中增加一条数据,后面也会单独讲,这里也就不多做详细 解释了。选中代码,按 f 五执行命令,数据已经添加成功,我们再次查询看一下,选中按 f 五,这就是刚刚添加进去的数据, 现在讲如何删除表,删除表有三种方法,第一,迪丽特删除,第二,叉 kt 删除,第三,撞破删除。他们之间有什么区别?请看演示。迪丽特 flom 是关键字语法这样规定,后面跟的是表明, 这里写十九等英方微审。选中 i f 五执行命令,执行成功,我们再次查询表,表中数据已被删除,我们选中英式词英图语句,向表中再添加两条数据, i f 五执行命令 执行成功,我们再查询看一下,表中现在有两条数据,现在我们演示叉 k 的推爆删除表,叉 k 的推保是关键字语法,这样规定,后面跟着表明,选中代码,按 f 执行命令, 数据删除成功。我们在执行查询命令,表中数据已被删除,我们再向数据表中添加三条数据,选中代码,按 f 五执行命令。增加三条数据,点击查询语句执行命令 查询三条语句。现在表中已有三条数据,现在我们演示壮普推宝删除表,壮普推宝是关键字语法这样规定,后面更的是表明,选中代码,按 f 五执行命令,执行成功, 现在我们在执行查询语句。对象名十九等于英方尾声无效。这句话是什么意思呢?就是说这张表十九点九英方尾声,这个名称是错误的。 为什么是错误的?现在我给你们解释总结一下,壮普推报删除的是表的数据以及结构, 也就是说通过撞破这个关键字来删除表的话,他把表结构和表中的数据全部删除了,所以这个时候他就会提示对象名表明是错误的,因为 你把表的结构都删除了,这张表都不存在了,那肯定是错误的,无效的。总结一下,壮普推宝删除的是表的数据以及表结构。吉利腾和 穿给他删除的是表内的数据,但是表结构还在,穿给他比迪丽特执行效率高,迪丽特是逐行删除,效率低一些。 下一节讲解表中的数据类型和如何向表中增加数据,也就是音色的英图语句。

首先为大家讲解如何连接数据源,点击添加数据源,以 mac 口为例, 业务系统我就填写员工信息库,然后数据员地址是你数据库的 ip 地址,如果数据库在本地,就填写 local host, 密码是你数据库的密码。填写完毕后点击测试链接,测试成功后再点击确定,可以看到我们添加的数据员。回到主页刷新数据目录数,可以看到我们添加的员工信息库。 鼠标移动到每一个节点上,右边都会显示三个点,鼠标放在上面就会显示对应的菜单栏。接下来我们新建一个数据库,给数据库起一个名字叫 test。 测试下面的字符及与排序规则可以根据自己的需求去选择,这里我选择的是 utf 杠八 数据库创建好以后,接下来演示一下该如何新建表。新建表的方式有两种,你可以选择用代码去生成一个表格,也可以选择一列一列的自己构造一个表格。新建一个查询后,在查询框内输入我们新建表的 soco 语句, 可以选择右键执行,也可以选择左边的执行图标。执行完毕后去查看我们新建的表格, 这是第一种建表方式,接下来看第二种建表方式,我们直接打开菜单, 选择新建表格,然后右键去添加表格的列数据,可以修改列名以及配置其他参数,想添加多少列就添加多少。 添加完毕后一定要记住保存表数据,这里会显示操作对应的 circle 语句,再去查看表数据,可以发现我们的表新建好了。关于如何数据导入,首先要新建一个查询,用 circle 语句新建一个空的工资表。 需要注意的是,你新建空表里面的列与你要导入的表格数据列必须一一对应。 打开菜单,找到导入数据,选择需要导入的表格文件后, 检查映射是否一一对应。确认完毕后再去查看表数据,刷新以后就能看到导入的完整数据啦。 至于导出更加方便,不仅菜单栏里可以选择 c、 s、 v 格式导出,选择你想导出的数据数量, 也可以点击下方的下载图标。导出结果栏的数据是导出目前你所看到的部分数据,而在线导出是导出表格里面所有的数据,点击确认后就可以看到你导出的表格了。

哈喽,大家好,今天的这一期的内容呢,我们接着上一期的内容往后讲,那么上一期的这个实操内容呢?我们讲到这个 join 的这个啊,连接的这个啊,表连接的这个基础的用法。 然后呢今天呢,我们继续要讲这个桌椅的一个基础用法,因为在上一期呢,我们讲到的是他的最基本,最基本的用法,将用这个什么呢?用这个,用我们的 我们的这个终于关键字,将两个表中的数据 拼接起来,我们把它叫连接查询,我叫连接查询,那么我们讲到他的一个基本语法,那么在上一期的啊,那个内容当中呢,我们 读到了什么呢?最基本的 select the symbol。 然后呢啊去连接什么呢?去连接成绩表 scoring for。 然后呢?哦这个叫什么呢? on 它的一个语啊, on 是什么呢?后面跟他的这个条件, 后面跟上我们的这个,嗯, student before 它的什么呢? two id, 我们这个 scoring four 点 two id, 那么这是我们上次讲的人的这个内容,那么这样连接呢,就把这个星号代表的是什么?星号代表的是星号, 代表的是两个表中所有的点都要查询出来,所有的点都要查,都要查询出来。然后呢我们用到了什么呢? student 的 their stu id 和 school info 的这个 stu id 法,让他们两个这数据有相同的, 就把这个数据拼接起来,就罗列起来,就说相当于一条数据当中,如果他的这个 id 相同,那么就给他拼接成一条, 那么当两个表中的这个有同名的字段的时候,这个时候我们查询的是什么呢?查询的是新号,那大家可以发现这里呢有一个 stu id, 然后我们的这个呃,我们把它写出来哈, stu 等头当中呢, student 音波表中有一个有一个 t id, 然后呢 score 音波表中 也有一个是一个 id, 那么问题问题是什么呢?也就是我们这个啊 question 这个问题,我们之前在单表查询的时候, 查询的时候我们可以选择性的,选择性的查询指定的某一些,那么多表查询可不可以呢?答案是可以的,多表查询也 可以查询出指定的某一某一系列,然后我们可以看到这下面的数据,其实呢这个 stu id 和这个表达的 studio id 它是有重叠的,我们只需要一个 studio id 就可以了,那么这个时候我们需要怎么做呢?这个时候我们就需要当 两个表中有同名的次状的时候,为了 帮助我们的这个,为了帮助这个数据库的引擎区分是哪个 表的字段,这个时候我们在书写同名字段的时候,需要加上表名 和字段 v 区分,中间用 there 分割,就像什么呢?就像我们的这个地方一样,因为我们要去让他们俩之间有一个关联的关系,所以说呢是我们需要去用啊 student info 的某一这个 id 去跟我们这个 score info 这个 id 相 id 相关联,那么如果说你的这个啊名字不相同也是可以关联的,这个名这个地方要注意,不是因为不是两个自动的名称一定要相同,因为我的相同是因为我之前在设计的时候 把这两个为了提前烫自己的关联关系,我把他们两个设置设置成一样的这个这个 id 名字了,那么我们如果要查询什么呢?有了这个啊,规则,我们要查询指定的列,比如说我们要我们要查询学生 姓名,然后班级,科目,分数,还有学生学号这几个指短,那这个时候我们就要怎么查呢? select, 先把我们这个型号先写出来,是吧? 等于 score in four, 第二 stu id, 那这个时候有了之后,我们来再来写这个里,这里面我们要查询什么呢?哦,学生 id student in four 里面的这个啊,我们先,我们先不写这个钱,最好我们只写列名 stu id, 然后呢?呃,班级 class, stew class, 然后是我们的这个,呃,科目 subject, 嗯,还有我们的这个,嗯,还有我们的这个什么呢? 科目还有分数 score, 是吧? score 啊,这些呢?是我们的这个啊数据,然后我们来看一下,这是我们正常的写法,正常写法就是 select 列名啊, from 表明,对吧?然后我们把它查询一下, 那这个时候你会发现,哎,这个 stu id 它是不明确的,这个时候我们就需要讲到我们刚刚用的当两个表当中有同名字段的时候呢,我们这个时候就需要去把它区分一下, student inforder, student inforder stu it, 那这个时候呢,我们再来查询的时候,你看他就查询出来了序号,然后 姓名的把姓名加上 studio studium studium, 然后这个时候我们再去执行 呀,他又出来了学号,姓名,班级科目和成和这个成绩。那么有了这个之后呢,我们就可以总结,你看这后面的,我为什么没有加这个前缀呢?这个前缀就是他是可以省略的,省略的,省略的时候前缀 表明里面前缀可以省略,情况是什么呢?字段名称在多个表中 是唯一的,此时名称可以省略,此时名称可以省省略。那如果是同名,如果有同名的字段,就是这个地方,就是我们讲到的如果有同名的字段, 如果这段名称在在多个表中是不唯一的,就是有同名的。 这个时候一定需要一定要用表面点内面去分,去分开,不然谁去哭?不知道你要的 是哪个表的,是哪个表的制段,这个就是我们啊今天讲到的啊这个基础内容,然后下一期的内容呢? 继续讲重音,因为重音里面有很多很多的小细节都需要去去给他一一搞清楚的,都需要需要去给他一一搞清楚的。那今天我们就到这里。

我们公司之前不是出过一个扎瓦开发手册吗,上面有一条规约呢,是禁止超过三张表的照案,而实际的操作过程中呢,我们平时确实也很少在伺候当中写照案,两张表的照案呢,有时候还有,但是多张表的照案呢,只有在离线数据分析的时候用的比较多,在线系统呢,确实用的比较少。经常呢会有人问我,为什么, 其实最主要原因呢,就一句话,就是因为他转的效率比较低。买车口呢,是使用嵌套循环的方式来实现关联查询的,简单的说呢,就是通过两层循环,用第一张表做外循环,第二张表做内循环。外循环的每一条记录呢,都要跟内循环当中的所有记录做比较,符合条件呢就输出。而具体到算法上呢,主要有三种, 简单的嵌套循环,基于缓存的嵌套循环,以及基于所有的嵌套循环。而这三种效率呢,其实都不高。首先呢,最差的就是简单嵌套循环,它的做法呢,简单粗暴,就是全量扫描连接两张秒的数据,进行两两对比,所以它的复杂度呢,你可以简单的认为是欧恩方。 好一点的算法呢,是基于所隐的欠账循环,当内循环的表当中用到的字段可以用所隐的话,那么就会用所隐进行查询数据,因为所隐是毕加数的嘛,所以呢,我们可以简单的认为这个时间复杂度是欧文 logan。 那基于缓存的嵌套循环这种算法呢,其实是引入了八分,会提前把外循环当中的数据呢放到多个转八分当中,然后内循环的每一行呢都和多个八分的整体数据进行组比较,从而呢减少内循环的次数,它的复杂度呢,你可以简单的理解为 on 乘以 m, 这里的 m 指的就是八分的个数, 所以呢,虽然买色购已经尽可能的在做优化了,但是这几种算法的复杂度呢,其实还都挺高的,这也是为什么我们不建议在数据库当中进行多表照案的原因,因为随着表越来越多,表中的数据量也越来越多的话,照案的效率就会呈指数据的下降。那么问题来了,如果不让用多表照案的话,关联查询该怎么做呢?

今天接着给大家分享一下卖收口小表,学生大表的优化原则,那么呢,我这边已经准备好了相关的测试数据,首先有一张学生表,他有三十行数据,然后还有一个分数表,他有八十万行数据。那么接下来我们就看这两条收口的一个执行效率是怎样的。我们先看第一条收口, 然后呢他耗时三点三秒。那么呢,我们再看一下第二条搜狗的一个执行效率, 他的耗时是四点二秒,我想很多小伙伴都能猜到是第一条搜狗执行更快,因为呢我们的学生表数据相对较少,那么大家知道他为什么会查询快吗?我们先分析一下两条搜狗的执行计划是怎样的。我们先看第一条搜狗, 首先 id 序号是相同,也就是说他是从上往下执行的,即我们先全表扫描的学生表,在全表扫描分数表, 我们看一下额外信息链,额外信息链呢,它提示使用的 gm buffer, 并且呢使用的是 bnl 算法。那么我们再看一下第二条搜索, 第二条收口呢,它也是 id 相同,不同的是事先全表扫描分数表,再全表扫描学生表。同样呢,它也提示使用的 gm buffer, 并且是 bnl 算法。 那么我们两条收购的执行计划看起来是不是没有什么差异,但是呢,执行效率确实存在的差异,其实呢,额外信息呢,已经给出了答案,也就是使用了 g n buffer, 并且呢是 b n l 算法,那么 g n buffer 如何理解呢? gan buffer 是优化器用于处理连接查询操作时的临时缓冲区。简单来说,当我们需要比较两个和多个表的数据进行久远操作时, gan buffer 呢可以帮助买 临时存储结果,以减少磁盘读取和 cpu 负担,从而呢提高查询效率。但是需要注意的一点就是每一个酒饮呢都有一个单独的缓冲区,那么 bnl 算法是什么呢? bnl 算法,它会将驱动表数据呢加载到 jr buffer 里面,然后呢在批量与非驱动表进行匹配, 比如说我们学生表呢有三十条数据,那么首先呢会将我们的三十条数据呢加载到就用 buffer 里面,然后呢批量的与我们的分数表进行匹配,然后记录结果,然后呢将结果进行返回,那么呢这也就是第一条收购它的一个数据匹配过程。 那么就有小伙伴想到,如果驱动表的数据量过大,圈把粉无法一次性加载完成怎么办呢?那么就会出现分阶段匹配,那分阶段匹配是什么含义呢?我们以第二条锁口为例,首先我们假设圈把粉呢,他只能 加载五条数据,那么首先呢他就会将我们的分数表前五条数据呢加载到就用八分里面,然后呢再与我们的学生表进行批量匹配,然后记录结果,然后呢清空就用八分,因为我们的分数表是不是还没有匹配完成, 所以呢他清空捐八分,然后呢再加载我们接下来的五条数据,再加载到捐八分里面,然后呢再与我们的学生表进行批量匹配,再记录结果,然后呢一直重复这一个操作,直到呢我们分数表的数据全部匹配完成,最终呢将我们的结果进行返回, 那么这也就是我们第二条收口的数据匹配过程,这也就是两条收口查询效率差异的本质原因。我们第一条收口呢,因为我们的驱动表是学生表,他的数据量相对较小,所以呢他直接就可以一次性加载到 gbuffer 里面,然后呢进行一次性批量匹配完成,那么呢,他底 现在就是小表驱动大表的原则,而我们第二条蛇口呢,他的驱动表是分数表,他需要分多次读取加载到我们的 gumbuff 里面,然后呢多次与我们的学生表进行全表扫描匹配,那么他体现的就是大表驱动小表的原则。 我们在实际开发中就要避免出现分阶段匹配,也就是避免大表取动小表,要遵守小表取动大表的原则。那么今天的分享呢,就到这里了,如果大家觉得有些收获的话,可以点个赞,来个一键三连。 视频配套的笔记,大家可以在评论区留言获取,我是白你,我们下期再见!视频配套十万字面试笔记已整理,免费带走!

今天信哥使用一个小案例带你搞懂 circle 的基本执行顺序。首先我们看一下这个 circle 语句,这个 circle 语句是找出平均成绩大于八十分的前三名班级, select、 evg from where, group by having, order by limit 一共用到了这几个关键字,那么这条社会语句的执行顺序是什么呢?我们来看一下。第一步,执行的是 form 语句,数据库引擎,首先扫描学生成绩表。第二步,执行 vr 条件,过滤掉成绩为空的记录。 第三步,执行 girl by, 按照班级进行分组。第四步,执行 a v g 函数,就是对每个班级的分数求平均数。 第五步,执行 having 语句,过滤出平均分大于八十分的分组。 having 语句和 wear 语句都有过滤的作用,但是使用的场景和执行的顺序是不一样的,这点需要大家注意。第六步,执行 select 语句,将需要的列给筛选出来。 第七步,奥德拜按照平均成绩进行排序,第一 sc 是造排序。第八步, limit, 只取三条记录,至此,一条完整的色扣语句就执行完了,小伙伴们你们学会了吗?

大家好,今天我们来学习如何在 ql server 中创建数据库合金表。首先打开 sql sever 二零零八, 点击连接到数据库引擎,打开我们的数据库引擎之后,要进行建立我们的数据库操作,点击新建查询,进入编写代码页面。第一步,编写图中代码语句, create data 呗数据库名,建立并设置自己的数据库 和数据库名。 on primary 为添加数据库文件的组文件名发用 name 为文件路径位置 size 设置文件初始大小 max size 设置文件最大大小 firebro 设置增长方式 vlog on 设置数据库文件的日制文件名,点击执行或按下 f, 我们就建立了一个自己的数据库。 接下来是表的创建,首先输入代码 usc, 加数据库名,切换到我们创建的数据库。然后编写代码 create table 表明。建立并设置自己的表和表明之后,可以在表中添加自己需要的属性,其中 id 为编号属性, name 为姓名, sex 为性别, h 为年龄。大家可以根据实际情况编写属性叉,二位字福串属性后面括号是字符长度属性。 数据类型可以根据实际情况修改。 primary t 为主见约束, not 为非空约束,顾名思义,取之不能为空。这样我们就创建好了我们自己的数据库核表。以上就是本期所有内容,我们下期再见。

接下来呢,我们来看一下这个如何添加联合主见。呃,所谓的联合主见呢,就是我们的主见呢,不是由一列组成,而是有多列,或者说呢就是多个列呢组成了一个主见。 这里呢有两点要注意。第一个的话呢,就是如果说你的主见是联合主见,那么你在创建这个主见的时候呢,就不能呢在列的后面呢,直接声明, 就比如说以前我们创建单列主见,是吧?在自断的后面是不是直接跟上扑门 k 啊?但是联合主见不行, ok, 第二个的话,就是我们知道一张表只能有一个主见,在这里的话呢,也要注意点,就是联合主见他也是只有一个主见,他并不说呢,你这个主 主见是有两个列组成,他是两个主见,或者说你这个主见是由三列组成,他是三个主见,而呢还是只有一个主见。好,这里要注意一下, 咱们来看一下他的语法,语法呢就是 crit table 表明,然后呢他在写的时候呢是在后面啊, primer k, 然后呢后面跟上,你把哪些列指定为主见?是这样子,好,咱们来做一下。比如说呢,我要去建一个烟 p 三这个表,员工表, 那我要把名字还有他的员工的部门编号,然后合成一个主见, 怎么办呢?我们在这里的话呢,可以直接在后面使用一个破门 k, 然后呢里边只定两个字段,一个是内幕,一个是部门的编号,这样的话呢就相当于这两列合在一起, 作为一个主见。好,接下来我们来做一下回到我们的这个 nice, 看他在这里,我们直接来对这个表来进行操作,你看我要将内幕和这个 dpd 把它这个加号点一下,它呢作为一个联合主见,我们呢需要在最后啊,最后面呢加上一个逗号,注意这一列的后面一定要加逗号表示,后面还有内容,其实你前面有一个关键字,它省略了,叫 custrend c o s t r a n t 克斯,蠢的。然后呢可以给这个主见起个名字啊,注意啊,这个名字的话呢,你可以随便起。 哎,这个地方我会写个 p k 是吧?啊,这个地方呢我们直接写上一个 p k 二,然后的话呢后面呢直接呢跟上一个关键字,还是那个 permer k 里边呢?跟上你要将哪些列合在一起,作为一个主见,我将名字还有波尔编号,第一 pt id。 好,他俩合在一起作为主见,这就是联合主见。 那接下来我们来创建一下他啊,把这个表创建一下,来,选中他来执行。好,执行没有问题,没有问题的话呢,在这里我们来刷新一下 啊,打开这个表啊,我们直接右键设计表,设计表之后,你看到这个主见和以前不一样了,你看这一列后面是不是有一个金色的钥匙, 这一列后面是不是也有个金色钥匙,那这两列呢合在一起呢,作为一个联合主见,好,这就是所谓的联合主见。好,联合主见呢,有了之后呢,咱们来去证明一下,就是联合主见呢, 他呢有什么特点?在这里的话呢,我还是给这个表插上数据,那或者说呢,你直接呢通过这个地方啊,我们来双击下这个表,他是不是打开这,你可以直接在这操作,也可以啊,咱们先插入一个数据, 比如说我给你个表插入数据, insert 因兔,然后呢一 n p 三 while 四,给它插入数据,怎么插入呢?我们在这里的话呢,给它插入数据,它是第一个是内幕,对吧?我们给它一个张三, 第二个的话呢是步入编号,我们给他一个十,薪资,我们给他一个五千。好,这是我们插入的第一条数据,我们直接执行就可以了。 接下来的话呢,我们把这个呢复制一下,然后粘贴,你看接下来我 假如说插入和上面一模一样的,咱在这里执行,你看就报错了,说什么呢?说其实呢,就是这两个合在一起,作为一个主见,就他俩呢必须唯一来标识这一行, 那你呢?是张三十,这个地方也是张三十,肯定是不行的,因为主界呢是不能重复的,对不对?不能重复的,那咱们怎么办呢?咱们得改一下,假如说张三不变,然后呢我把这个部门号变成二十, 这样可不可以呢?咱们来试一下,来在这执行一下,这样是可以的,咱们来看这个表数据,嗯,在这里把它关掉, 关掉好打开这刷新一下,你看这是不是两条又都进去了?为什么呢?因为这两个合在一起是做主见,只要这两个不是完全相同就行了,就是你张三一样,没关系,他这个地方呢, 你的不容编号不一样,就他两个只要不是完全一样就可以插入进去,那同样的你还可以再这样写, 你呢这个地方呢,十一样,对吧?或者说二十一样吧,二十和上面这个是不一样,但是这个名字不同,对吧?你是张三,我是王,我是王五, ok, 这样是可以的,这样也可以插入进去,反正只要他呢不是完全一样就可以,你看 张三一样没关系,他这部门不一样,部门一样,但是名字不一样就行了,只要不是同时相同就行 啊。咱们还说过主见他不能为空,是不是?那这里的为空怎么怎么去处理呢?来,咱们可以试一下, 那么在这里的话呢,看一下,假如说我把这个名字为空,我来插入啊,在三十号部门名字为空好,执行 来,他说你看,他说这个内幕不能为空,你看这个说的话呢,我们的名字不能为空。好,假如说的话呢,我们再反过来啊, 你看这里边把这个数据添加进去没有?没有吧?他说那个名字不能为空啊。接下来的话呢,我们再来看这样的一个值啊,比如说呢,我在这里这个不为空啊,这样我留着啊,把它给我执行。然后呢这里边名字啊,张三李四、王五、赵六。 ok, 然后呢在这里我把它为空,为空的话直接写个闹就行了啊,写个闹,然后的话在这里我们来执行 啊,你看说这个部门号不能为空,也就说他两个作为联合主见,任何一个都不能为空,那当然了,你如果两个都同时为空,那肯定 更不行,所以说出于这个问题,他两个都,他两个呢?任一个都不能为空。好,这里边我们来注,我们来记一下,联合主见,联合主见的啊,任一个 联合主见,联合,这样的就是联合主见的个列, 每一列都不能为控,每一列都不能为控, 追这个就行了,这个空呢?其实就是闹, ok, 这是他为空的情况,这是他不能重复的情况,咱给大家解释清楚了。 好,回到我们的讲义,那关于这个联合主见的一个使用和他的一个特点呢?咱就先说到这里。

使用 heidi s q 在 my s q 数据库中创建表是很简单的,下面呢以创建会员表为例来做演示, 会员表的名称呢是 member。 接下来呢我们就启动 hiding escore, 我们找到在上一讲里边创建的数据库 vibo, 然后呢在它的上边点击右键选择创建新的表, 表的名称呢,我们把它复制过来叫做闷宝。然后呢我们的下边的字段添加第一个呢叫做 id, 数据类型呢是 i n t, 因为这个 id 呢它是 在数据库表中是唯一的,我们给它设置为锁影啊,创建新锁影,然后选择 primary 默认值,这个地方呢我们双击它,然后选择为自动增亮, 它的英文名呢叫做 out to encomplement, 我们点击确定。接下来我们插入第二个字段, 这四个字段呢都选择为 vacci 这种类型,也就是文本类型 默认值,这里呢都是无默认值。接下来呢我们再添加一个注册时间的这样一个字段,数据类型选择为 timer stand 默认者这个地方双击,然后选择表达式,选择为 current 这个表达式,然后单击确定,那么这样在插入记录的时候就会自动获取当前的时间, 我们单击保存好,这样我们这个表就创建好了。接下来我们点击数据这个地方,然后来增加一条数据, 我们输入用户名密码,然后我们在外边点一下鼠标,那么这个时候我们会看到 id 号已经自动生成了,是一,然后注册的时间已经 自动生成了,当我们添加第二条记录的时候, id 号呢就自动变成了二,然后呢时间也是自动获取, 大家如果想看更多的追梦人设计 php 动态网站的视频,欢迎私信唐老师联系。

接下来呢我们来看第二个就是 macco 图形管理工具 sco 一样个的一个安装和使用,这个工具呢也是非常常用的,来咱们看一下, 首先第一步还是呢去下载软件包,他的官网呢,在这里我们看下这个页面,在这里,然后的话呢下载这个软件包之后,对吧?在这里点登录的啊,下载,下载之后呢,然后开始安装,安装的话呢选择中文,然后呢下一步, 然后呢在这里接受这个许可协议,然后下一步,然后在这里呢指定一个安装路径,安装路径随便指定啊,只要没有中文,没有空格就可以,然后下一步,然后安装。 嗯,安装完之后呢,在这里点完成啊,这里边他需要你做一个注册啊,注册一下,然后最后打开就是这样的一个页面。 好,咱们接下来呢来安装一下,在这里的话呢,你可以直接啊点 download 啊, free download, 然后的话呢在这里啊,然后点单漏的啊,他就开始下载了,你稍等一下,他就开始启动这个下载程序,很快就下载完了,是吧?我呢已经把它下载到这里了,我们来看一下啊,这是这个软件包, 我们安装一下,大家来看一下,直接双击他好,然后在这里选择这个中文简体啊,点, ok, 下一步接受这个许可协议。下一步,下一步是不是非常简单啊?咱装在哪里呢?你可以直接装在 c 盘直接安装,不用改这个路径也行,在这里呢我放的 d 盘, 迪拜乐普。好吧,在车里面呢,有一个四扣样格,嗯, 这个路径呢,我看一下他这个里面有没有内容,来看一下第一盘,然后 dy l p, 然后这里有个 celo 一样个进来啊,把这里的数据呢删了,把这个数据删了,删了之后呢,我们呃把它放在这里边安装好吧,然后点安装稍等。 好,这个地方完成之后呢,我们直接点下一步就可以了,点下一步啊,然后这里点运行 稍等啊,运行的话呢,他第一次弹出这样的一个窗口,是吧?呃,弹出这个窗口的话,你注意有的时候呢他会弹一个窗口让你注册啊,这个注册在哪呢?这个窗口你可以先关掉啊,在这个帮助里面 帮助里边,帮助里边的话呢,有一个更改注册信息,应该是这 这个那就是他会弹出这样的一个窗口,你的注册一下,那这个注册信息呢?嗯,在这里给大家提供了一个,我们可以看一下啊,这里边有个文件,那这里边呢需要输入一个这个名字,你把这个呢复制一下,然后放在这里。 ok, 然后还要输入一个这个序列号,把这序列号呢复制一下,然后的话呢 放在这里,然后点注册就可以了。好,然后注册之后呢你就可以使用了,那打开的话就是这个窗口啊,然后刚才那个窗口呢,就在这里文件有个新连接,你看到这个界面基本上就表示安装成功了。 好,回到我们的讲义啊,这个的话其实就是四扣秧歌的一个安装好了,关于这个安装呢,咱们就先说到这里。

作为大数据分析师,怎么能不会奢口的表连接呢?三招教会你在评论区留言六六六送奢口学习资料!今天呢,我们来学习一下怎么样把两张表关联起来。 数据库里面呢,肯定不会只有一张表,我们经常会查询多张表,例如一张表存订单信息,一张表存产品信息。如果我们要得到如图这样的一张表,它的数据分别来自于订单表和产品表,那我们需要怎么操作呢? 这个时候呢,我们就需要连接这些表,用官方的术语来说,这个动作叫做表连接。一说到表连接,大家都会有一个疑问,究竟谁连接谁?举个例子, 左边表示订单表,右边是产品表,我们要通过他们来匹配出产品表的这个类别和零售价。所以的话,左边就是一个参照物,他会在 右边的表进行一个查询。这时候呢,在你的脑海里面浮现两张表,一张表是订单表,一张表是产品表,以左边作为参照物,那就是 lefto 转产品表,这里的 a 和 b 分别是订单表和产品表的重命名。 如果你说我要以产品表作为主表,那怎么处理呢?对于你的需求,我们满足你,这里就是又连接的车口。首先在你的脑海里面要浮现两张表,一左一右,右边是产品表,以右表作为参照物,那就是 rice 奥特传订单表,这里的 a 和 b 分别是订单表和产品表的重命名。 因为我们的产品表为主表,有些产品呢,它是没有订单的,所以就没有匹配出来数据,结果就为空了。总结一下本节课的知识点,知识点一,查询通常是多表进行的,需要进行表连接。 字词点二,左右两张表谁为主表就分别使用 left 和 right。 字词点三,如果表明太长,可以从命名放在表的后面即可。

哈喽,大家好,今天呢,我们来继续我们昨天的那个 creature table 的那个内容来继续往后讲。那么在上一次的这个,嗯, 内容当中呢,我们讲到了动态创建表结构 creatable, 然后我们的这个表明,然后这样去创建。嗯,这是我们上一次讲的内容呢,今天我们接着我们上一次的内容来讲。呃,上一次呢我们讲到了,嗯 嗯,这个我们保存一下。啊,这个保存了吗?嗯嗯,保存一下, ctrl s。 我们的这个 circle 啊,这个叫什么来着? 嗯, circle, 他的这个查询语句的这个文件,他是点 circle 的一个后缀,大家要注意啊,这个地方点 circle 这个点我们是创建创建表结构, 动态动态创建表结构零一这第一个。那今天我们要讲的是继续我们来讲创建表结构, 创建表结构,然后我们上次讲到创建表结构的,他的语法是什么呢?语法,语法还记得吗?就是 crater 关键字 crater table, 然后后面呢跟上表明,这个表明呢要怎么样呢?要,呃,符合, 符合命名规则,符合我们的这个命名规则。嗯,这是我们的表明,那他语法就是 呢表明,然后呢一个括号,这上面是列名,列名。然后呢?数据类型 是否为空?是否为空?然后呢?然后呢?继续数据类型,嗯,是否为空?然后我们讲到了每一列之间呢?用逗号隔开最后一列,可以省略这个逗号, 然后呢他这个是否为空呢?我们用什么来表示呢?用我们的一个呃 love 来表示, lot love, 拉特拉代表着 不为空,不为空的意思就是说当你在给这个表添加 数据的时候,这个数据是不可以直接略掉这个列不,不给填写的,这是拉特拉,然后呢?呃,默认不写拉特拉,或者写拉代表 默认可以为空,默认可以为空。然后呢?这是这是我们昨天讲到的内容,然后我们昨天还讲到一个比较重要的内容,就是 use 柚子,他是干嘛的?柚子,他的,呃,翻译关系在使用,使用就代表着使用,后面跟上数据库名称。柚子, 数据库名称,这个叫什么呢?使用某个指定的数据库 代表着,嗯,查询语句 在哪个数据库下去操作,默认不选择的时候是定位到 马斯特数据库,是定位的马斯特数据库,这个柚子很重要哦,但你如果没有他选的这个,选的这个数据库上有两种方式,第一种呢,是咱们左上角的这个 这个地方,他一个下拉列表就代表着你当前的这个收口语句的这个操作是在哪个指定的数据库下面。比如说我们来看一下我们这个 u 字 柚子和选择那个下拉列表他是一样的道理,你看我们可以 usa master, 当我选择这个柚子 master 的时候,我选中他 去执行,你看他这个选中 max, 当我选中这个优日是 tudent db 的时候呢? 执行。然后我们来看,先看这是 mattle 的执行,这个地方就是对的对比,这是我们昨天讲的内容,然后我们在之前讲到了什么?讲到了 啊,删除表结构,呃,删除数据库。那么今天我们要讲的是删除表,删除表,删除表结构,就怎么删除呢? crate 删除 表语句, drop, 之前相处数据库是 drop database, 然后数据库名称,然后我们删除,表示 drop drop table 后面跟上表明,后面跟上我们这个后面跟上我们这个表明。嗯,那么我们现在来看一下我们要干嘛呢? drop table, 我们这个叫什么来着?我们昨天建了一个表,叫什么呢?叫 surpjinx, 我们删除这个 surpjinx, 那么选中它,然后呢? 然后呢?命令已完成,说明这句话我已经执行成功了,然后我再去刷新他,然后看这个表,这个骚 jx 就没有了,然后我们的这个,然后再次去删除的时候, 他会提示你这个表都已经没有人,再删除就是无效的,所以这个重要的一句他是可以重复使用的。当你这个表存在的时候 啊,你可以去删除,是没有毛病的。然后你在嗯不存在的时候去删除他,其实就执行不成功了,因为你这表都不存在,那么我们如果再把这个表咱们说了十二口一句,他是可以 无限次重复执行的,再选中他,有了这个,是吧?然后我们在这嗯刷一下看看, ok, 我的小 js 表出来了,我再去相处他,这个时候 a 命令已经成功完成,然后我再刷新 这个表,这个表又没有了,这个表又没有了,这个就是我们的这个删除表,删除表,抓 taboss x, 删除结构,删除数据库,删除表,都是用抓捕这个关键字,然后跟上呃表或者是酷的这个关键字,然后再跟上表明去 去删除他。然后我们在嗯创建表结构的时候,创建表结构的时候,我们可以一次性创建多个表,我们可以一次性创建多个表,于是我们可以啊创创建了一个,呃,扫借, 那么我们今天再来创建一个什么呢?再创建一个, 嗯,分数表,成绩表吧,成绩表,然后呢?语法是 crate a table scores scores, 然后呢?也就是我们这个,然后呢?第一个我们在创建表之前,我们首先要做的不是盲目的去写,我们要做什么呢?随便去分析这个表,分析 你要创建的这个表的结构里面都包含些什么 字段?里面都包含些什么字段?比如说我们要做一个成绩表,那么成绩表是针对于学生的,对吧?那么首先有一个序列号 id, 训练 id, 这个训练 id 呢,就是我们之前在讲啊,约束的时候讲到了组建约束,一般我们的这个表当中啊,一般而言每个表中都建立一个 主见主见字段,主见字段,那么这个主见字段他可以,他可以用在什么地方呢? 他可以,他可以用在用在什么地方呢?就是说,嗯嗯,你主建立表与表之间的主外界关系的时候,我这个会用到。嗯,然后呢?呃, 嗯,这个寒王的心的时候呢,我们需要用这个训练啊,用,用这个组建 id 去去做这件事情。嗯,然后呢,我们还可以在后面的复杂的时候,我们可以用它做一些,所以呀,排序啊,等等等等,所以说这个一般的我们这个表当中都会给他建立一个主建,都会给他建立一个主建。 然后呢我们来看一下这个是,嗯,时空 id, inter locker low, 然后呢?姓名,学生的一个姓名 steal name, 然后呢?二十姓名,是吧?然后成绩 score, 嗯, double 类型, 这是 w 类型,是一个,呃,不定型、小竖型、 小数类型,小数类型。那么这个表呢?我们就,我们就 a 是空,呃, id 是空, id 他他,嗯,这个我们改成呃 第,嗯,改成第三毛,第三毛,嗯,第三毛十八吧。二,这个第三毛十八代表他总的长度是十八,然后他小数点后面可以有两位, 这个是我们的这个,嗯,成绩表,这样我们就创建好了,然后我们来咨询一下, ok, 这样我们就创建了一个成绩表,看这里表, ok, 今天的内容我们就到这个地方就结束了。

好,咱们在上一节课,我们讲解了如何去使用 circle 来去操作表层的数据,那么这节课呢,我们就接着来讲解关于 circle 相关的知识,那么从这节课开始呢,我们呀会花几节课的时间来讲解一下关于啊 circle 语句的查询,为什么要花几节课呢? 语法,同学们可以看到,如果我们想要去使用 circle 去查询数据,可以看到这个语法是不是相当的复杂。好,但是呢,没有关系,我会拆分出来给同学们一点一点来进行讲解,那么让同学们呀,能够充分的把这个 circle 的数据查询了,那么这个语法呢,给他理解清楚。 好,那么我们来看下这个案例啊,就直接来看案例,首先我们来讲一下,那么这个简单查询,也就说一些最基本的查询,那么看到这一条社会语句,同学们就应该能够看到他,是不是啊,我们在之前就演示过呀,那么这条社会语句表示意思说,我们把这个员工表中的所有的数据, 那么全部都把它查询出来,那么 select 就表示啊,是选择的意思,而方呢就表示啊,从哪个表中来去选择数据。好,那么我们可以把这个搜口语句啊,我们先去执行一下,好回到 excess 中,然后呢把这个之前的搜口语句删除掉,我们来写上 select, 然后写上星号,再写上 from, 我们把这个员工表中的所有数据把它查询出来。好,紧接着来去进行运行, 那么来看,是不是啊,就把这个员工表中的所有的数据,是不是啊都已经查询出来呀?好,然后我们可以在这里啊再去单击啊这个售后视图,再去回到那么这个当前的这个售后视图。好,那么这是啊一个最基本的一个查询,也就是把某个表中的所有的数据,然后呢进行查询。 好,那么我们再往下来看,那么有些时候呢,我们呀并不是想要去把这个表中的所有的计算信息全部都进行查询 好,那么比如说在这个员工的表中,我们看到是不是有 id 啊,有姓名啊,有性别,出生日期,是否已婚,手机号,邮箱等等等等,那么这些信息啊实在是太多了,我们呀就只想去查询几个字段的信息。好,那么这个时候我们如何去编写这个社会语句呢? 那么我们俩就可以把这个相应的字段,然后呢通过逗号来进行分隔,然后在这里啊再去写上 fram。 员工,好,那我们来看一下这种写法是如何来去编写的。好,回到社会视图,把这个社会语句给删除掉,我们来写上还是 slect, 那么紧接着我们就想把我们呀想要去查询的这些字段的字段名我们来写上,比如说我想去查看员工的姓名,好,这个呢就是员工的性别,这样呢员工的手机号以及呢他的工资。好,那么我们紧接着来写上 一个 from, 来,员工,好,也就从这个员工表中,我们并不是把所有的字段的数据啊全部查询出来,而是只查询这四个字段。好,这个时候我们来去运行下,运行之后同学们发现有没有什么区别啊?