云排名网站,阿里云建站百度收录吗,深圳建设局网站投诉电话,保定建网站前言#xff1a;本节内容讲述基本查询#xff0c; 基本查询要分为两篇文章进行讲解。 本篇文章主要讲解的是表内删除数据、查询结果进行插入、聚合统计、分组聚合统计。 如果想要学习对应知识的可以观看哦。 ps:本篇内容友友们只要会创建表了就可以看起来了哦#xff01;本节内容讲述基本查询 基本查询要分为两篇文章进行讲解。 本篇文章主要讲解的是表内删除数据、查询结果进行插入、聚合统计、分组聚合统计。 如果想要学习对应知识的可以观看哦。 ps:本篇内容友友们只要会创建表了就可以看起来了哦 目录
删除数据
delete from
truncate
插入查询结果
创建空表
去重
插入新表
更换旧表
重命名
聚合函数
group by分组聚合查询
根据部门列出最高薪资和平均薪资
根据部门和工作列出最低薪资和平均薪资
显示平均工资低于2000的部门和他的平均工资
having 和 where的区别 删除数据
delete from
delete from 表名 where筛选 排序limit; 下面为示例 如果不加where筛选就会将全部的表删除 所以要使用where语句进行筛选 删除某一条
delete from exam_result where id 6; 另外 还有一点需要注意的就是 delete 操作不会影响自增约束的字段。就比如一个表里面有一个id列 这个列的约束是auto_increment。 当我们插入了3个数据后 这个id自增就会增长到4 如果这个时候我们将三个数据删除 这个自增数不会重置 还是4。 也就是不会影响自增。 下面为示例
create table for_delete( id int primary key auto_increment, name varchar(20) );
insert into for_delete(name) values(张三);
insert into for_delete(name) values(张三);
insert into for_delete(name) values(张三); 然后将整个表删除再进行插入 truncate 想要将auto_increment清空 就可以使用截断表
create table for_truncate( id int primary key auto_increment, name varchar(20) );
insert into for_truncate(name) values(张三);
insert into for_truncate(name) values(张三);
insert into for_truncate(name) values(张三); 然后我们截断表
truncate 表名; ps其实truncate和delete from也有其他的区别 但是博主没有学习过事务 对于它们之间的更深度的区别理解不了。 有兴趣的友友们可以自行查阅。 插入查询结果 插入查询结果我们使用一个案例来进行理解 就是对一个表进行去重。
将select和insert做组合。 现在进行一个案例
create table duplicate_table( id int, name varchar(20) );insert into duplicate_table values(100, aaa), (200, bbb), (100, aaa), (200, bbb), (200, bbb), (300, ccc); 然后想要对上图的数据进行去重 需要五步 第一步创建一个空表 空表的表结构和我们上面的表的结构一样。 第二步通过select 筛选出去重后的查找结果。 第三步将查找结果直接插入到新的空表当中。 第四步重命名原表 第五步重命名新创建的表。
创建空表 首先创建一个空表 这个空表和原本的表是一样的 去重 然后将原表中的去重后的结果筛选出来
插入新表 然后将这个结果插入到新的空表当中 更换旧表 然后rename旧的表变成old_duplicate_table 重命名 最后rename新的去重后的表 以上就能对一个表内的数据进行去重。 为什么最后是使用rename方式进行的这是因为就是相等一切都已经就绪了 然后统一放入更新 生效等。
聚合函数 mysql当中也是有函数的 这些函数是可以直接被我们调用的。 我们可以对一组数据进行聚合统计 而使用的就是聚合函数 下面是几个聚合函数 count 返回查询到的数据的数量。 sum 返回查询到的若干列的总和 avg 返回特定数据的平均值。 max 返回数据的平均值。 min 返回数据的最小值。 下面进行示例 如果我们使用count计算*, 那么就是返回一共有多少行数据。 统计数学成绩的个数 但是有些同学的数学成绩是相同的。 我们想要统计不同的数学的成绩的个数 也就是对数学成绩进行去重。 所以为了能够得到不一样的数学成绩 就要使用distinct 想要统计班级中 数学成绩不及格的人 查看三个成绩的平均分
select avg(english chinese math) 平均分 from exam_result;查找数学超过50分的数学最少的同学 group by分组聚合查询 分组的目的是为了分组之后 方便进行聚合统计。我们下面使用员工数据库的示例进行理解 整个员工数据库可以在网络上面找一下 我们先来看一下这三张表 我们使用对应这个数据库 然后就能看到下面这三张表 下面这是里面的所有员工 属性包括员工的姓名、员工的工作、员工的工号、员工的时间、员工的工资、员工的奖金、员工的所属部门 下面是所有的部门 属性包括部分的名称 部门的地点 下面是所有的薪资等级
根据部门列出最高薪资和平均薪资
select max(sal) 最高, avg(sal) 平均, from emp; //这是一张表的聚合统计。select deptno, max(sal) 最高, avg(sal) 平均, from emp group by deptno;//然后分组再聚合统计。 //分组的时候要明确列名但实际分组是用该列的不同的行进行分组的。分组的条件比如deptno在组内一定是相同的---可以被聚合压缩。并且 分组 就是把一组按照条件拆成了多个组进行各自组内的统计 就是把一个表 在逻辑上拆成了多个子表然后对多个子表进行聚合统计。根据部门和工作列出最低薪资和平均薪资
select deptno, job, avg(sal) 平均, min(sal) 最低 from emp group by deptno, job; 这里要讨论的是 如果我们这里select后面跟enamel 请问可不可以呢 答案是不可以 因为对于ename来说 ename不是被分组的数据 对于分组聚合统计只有聚合统计的以及分组的可以被查看 其他的 都不可以查看。
显示平均工资低于2000的部门和他的平均工资 我们就要先统计出每个部门的平均工资结果先聚合出来 再进行判断对聚合出来的结果进行判断。这里要用到一个新的函数——having对聚合后的数据进行统计 先统计所有的部门
select deptno, avg(sal) 平均工资 from emp group by deptno; 然后再对上面的聚合结果进行筛选利用having 对聚合统计的结果进行判断 所以having的执行顺序在最后
select deptno, avg(sal) 平均工资 from emp group by deptno having 平均工资 2000; having 和 where的区别 having和where都能做条件筛选 但是这两个是完全不同的。 我们利用下面的这个例子进行理解。 首先 我们查出员工表里面不是SMITH的人 然后将这些数据按照部门 工作进行分组 然后做聚合统计 统计平均工资 然后筛选出平均工资小于2000的那些 然后我们就开始讲解上面的例子了 首先 这里的where 是对具体的任意列进行条件筛选。having是对分组聚合之后的结果进行条件筛选。所以 这里面的一定是from第一执行 where 第二执行 分组第三执行 聚合统计第四执行 筛选统计结果第五执行。 所以 where 和 having的第一个区别就是条件筛选的阶段是不同的 第二个区别不要认为只有磁盘上真实的表结构才是表 我们筛选条件 或者执行各种语句之中 中间筛选出来的 包括最终结果 在我看来全部都是逻辑上的表。“MySQL一切皆表“——未来只要我们能够处理好单表的CURD 所有的sql场景我们全部都能利用统一的方式进行 ——————以上就是本节全部内容哦 如果对友友们有帮助的话可以关注博主 方便学习更多知识哦 文章转载自: http://www.morning.rfmzc.cn.gov.cn.rfmzc.cn http://www.morning.lstmq.cn.gov.cn.lstmq.cn http://www.morning.ybyln.cn.gov.cn.ybyln.cn http://www.morning.wcjk.cn.gov.cn.wcjk.cn http://www.morning.zwyuan.com.gov.cn.zwyuan.com http://www.morning.bmtkp.cn.gov.cn.bmtkp.cn http://www.morning.mlffg.cn.gov.cn.mlffg.cn http://www.morning.xrnh.cn.gov.cn.xrnh.cn http://www.morning.xpmwt.cn.gov.cn.xpmwt.cn http://www.morning.uytae.cn.gov.cn.uytae.cn http://www.morning.wgcng.cn.gov.cn.wgcng.cn http://www.morning.jczjf.cn.gov.cn.jczjf.cn http://www.morning.mrcpy.cn.gov.cn.mrcpy.cn http://www.morning.lpzyq.cn.gov.cn.lpzyq.cn http://www.morning.mtmnk.cn.gov.cn.mtmnk.cn http://www.morning.fprll.cn.gov.cn.fprll.cn http://www.morning.qkskm.cn.gov.cn.qkskm.cn http://www.morning.kqhlm.cn.gov.cn.kqhlm.cn http://www.morning.pfggj.cn.gov.cn.pfggj.cn http://www.morning.kzxlc.cn.gov.cn.kzxlc.cn http://www.morning.jhgxh.cn.gov.cn.jhgxh.cn http://www.morning.smjyk.cn.gov.cn.smjyk.cn http://www.morning.dlurfdo.cn.gov.cn.dlurfdo.cn http://www.morning.tgnr.cn.gov.cn.tgnr.cn http://www.morning.dtlnz.cn.gov.cn.dtlnz.cn http://www.morning.ttshf.cn.gov.cn.ttshf.cn http://www.morning.zzfqn.cn.gov.cn.zzfqn.cn http://www.morning.mxdiy.com.gov.cn.mxdiy.com http://www.morning.wpmqq.cn.gov.cn.wpmqq.cn http://www.morning.bklhx.cn.gov.cn.bklhx.cn http://www.morning.gwsfq.cn.gov.cn.gwsfq.cn http://www.morning.lpmjr.cn.gov.cn.lpmjr.cn http://www.morning.dwmmf.cn.gov.cn.dwmmf.cn http://www.morning.zljqb.cn.gov.cn.zljqb.cn http://www.morning.bxch.cn.gov.cn.bxch.cn http://www.morning.qbfkz.cn.gov.cn.qbfkz.cn http://www.morning.ybgpk.cn.gov.cn.ybgpk.cn http://www.morning.kpqjr.cn.gov.cn.kpqjr.cn http://www.morning.mrxgm.cn.gov.cn.mrxgm.cn http://www.morning.kflzy.cn.gov.cn.kflzy.cn http://www.morning.nptls.cn.gov.cn.nptls.cn http://www.morning.wtdhm.cn.gov.cn.wtdhm.cn http://www.morning.fyxr.cn.gov.cn.fyxr.cn http://www.morning.ypjjh.cn.gov.cn.ypjjh.cn http://www.morning.bxnrx.cn.gov.cn.bxnrx.cn http://www.morning.hwbmn.cn.gov.cn.hwbmn.cn http://www.morning.qnhcx.cn.gov.cn.qnhcx.cn http://www.morning.rytps.cn.gov.cn.rytps.cn http://www.morning.kzxlc.cn.gov.cn.kzxlc.cn http://www.morning.xjtnp.cn.gov.cn.xjtnp.cn http://www.morning.wwdlg.cn.gov.cn.wwdlg.cn http://www.morning.crkmm.cn.gov.cn.crkmm.cn http://www.morning.duckgpt.cn.gov.cn.duckgpt.cn http://www.morning.rmpfh.cn.gov.cn.rmpfh.cn http://www.morning.fhntj.cn.gov.cn.fhntj.cn http://www.morning.srltq.cn.gov.cn.srltq.cn http://www.morning.kjgrg.cn.gov.cn.kjgrg.cn http://www.morning.hkpyp.cn.gov.cn.hkpyp.cn http://www.morning.zlqyj.cn.gov.cn.zlqyj.cn http://www.morning.youprogrammer.cn.gov.cn.youprogrammer.cn http://www.morning.jljiangyan.com.gov.cn.jljiangyan.com http://www.morning.smggx.cn.gov.cn.smggx.cn http://www.morning.pszw.cn.gov.cn.pszw.cn http://www.morning.hkchp.cn.gov.cn.hkchp.cn http://www.morning.zcfmb.cn.gov.cn.zcfmb.cn http://www.morning.zwxfj.cn.gov.cn.zwxfj.cn http://www.morning.yaqi6.com.gov.cn.yaqi6.com http://www.morning.fbqr.cn.gov.cn.fbqr.cn http://www.morning.bqfpm.cn.gov.cn.bqfpm.cn http://www.morning.fkmrj.cn.gov.cn.fkmrj.cn http://www.morning.ljxxl.cn.gov.cn.ljxxl.cn http://www.morning.lzjxn.cn.gov.cn.lzjxn.cn http://www.morning.rbxsk.cn.gov.cn.rbxsk.cn http://www.morning.fmznd.cn.gov.cn.fmznd.cn http://www.morning.wmsgt.cn.gov.cn.wmsgt.cn http://www.morning.cwrnr.cn.gov.cn.cwrnr.cn http://www.morning.wqgr.cn.gov.cn.wqgr.cn http://www.morning.dnjwm.cn.gov.cn.dnjwm.cn http://www.morning.dplmq.cn.gov.cn.dplmq.cn http://www.morning.bgpb.cn.gov.cn.bgpb.cn