【MySQL】基本查询(第二弹)

06-01 1638阅读

【MySQL】基本查询(第二弹)

文章目录

  • 1.筛选分页结果
  • 2.Update
  • 3.Delete
  • 4.截断表
  • 5.插入查询结果
  • 6.聚合函数
    • 6.1什么是聚合函数
    • 6.2常见的聚合函数
    • 7.group by
      • 7.1如何显示每个部门的平均工资和最高工资
      • 7.2显示每个部门的每种岗位的平均工资和最低工资
      • 7.3显示平均工资低于2000的部门和它的平均工资
      • 8.总结

        1.筛选分页结果

        什么是筛选分页结果呢,我们都知道当我们在看小说或者很长的文章的时候,都会分成很多页,在未来数据库处理当中也会面临着处理很多数据,如果直接将所有数据显示出来,会使得负载过高,所以分页或者条件筛选是避不开的话题,所以接下来我们就来学习一下什么是筛选分页结果。

        select *from student limit 0,3;
        

        【MySQL】基本查询(第二弹)

        上面这种写法表示从哪个位置开始显示多少行数据,注意:表的开始是0好位置,而不是1号位置。

        limit不仅可以这样用,还可以通过加上其他的条件达到自己想要的效果,比如order by:

        【MySQL】基本查询(第二弹)

        我们可以通过order by加上limit来达到筛选出成绩最好的或者成绩最差的,根据自己数据库的需求来分页筛选

        2.Update

        基本语法:

        UPDATE table_name SET column = expr [, column = expr ...]
        [WHERE ...] [ORDER BY ...] [LIMIT ...]
        

        我们可以通过update来更新表中的数据:

        不加上限制条件会将所有对应该列的数据全部改为指定数据,所以在改数据的时候切记加上判断条件。

        【MySQL】基本查询(第二弹)

        3.Delete

        基本语法:

        DELETE FROM table_name [WHERE ...] [ORDER BY ...] [LIMIT ...]
        

        可以通过where条件删除表中对应的行数据:

        【MySQL】基本查询(第二弹)

        也可以通过delete删除整个表,我们专门创建一张表来测试delete的删除效果:

        【MySQL】基本查询(第二弹)

        删除表中所有数据:

        【MySQL】基本查询(第二弹)

        可以看到当我们删除表中所有数据时,自增长约束是不会被清除为0的,这就是delete的特性,接下来我们来看看truncate的特性

        4.截断表

        基本语法:

        TRUNCATE [TABLE] table_name
        

        我们也为truncate创建一张和delete相同的表,除了名字不同,插入的数据都是相同的。

        【MySQL】基本查询(第二弹)

        可以看到原本自增长有约束有指定值的,但是truncate一下被清楚掉了,这就是truncate和delete的区别,一个会清除,一个不会。

        5.插入查询结果

        INSERT INTO table_name [(column [, column ...])] SELECT ...
        

        插入查询结果,就相当于把查询出来的结构插入到一个新表当中,我们常用于去重,这里我们给出一组有多组重复数据的表,然后我们用insert和select进行去重,可能有些人要说,用distinct也可以去重,确实可以去重,但是distinct是不会改变表的数据的,查表的时候还是原本的数据。

        【MySQL】基本查询(第二弹)

        可以看到这里我们创建了一张有多组重复数据的表结构,接下来我们要进行去重,我们的去重思路是,先创建一张新表,然后进行select筛选,将筛选出来的数据插入到新表中,然后将老的表的名字改名,将新表的名字也用rename进行改名,改名为原表的名字。

        【MySQL】基本查询(第二弹)

        可以看到经过我们一系列改表名称之后,我们得到了一个去重之后的表。

        6.聚合函数

        6.1什么是聚合函数

        聚合函数(Aggregate Function)是一类 对一组数据进行计算并返回单一值 的 SQL 函数,通常用于 统计 或 数据分析。聚合函数主要用于 SELECT 语句,并通常与 GROUP BY 结合使用。

        6.2常见的聚合函数

        函数作用示例
        COUNT()计算记录数SELECT COUNT(*) FROM users;
        SUM()计算总和SELECT SUM(salary) FROM employees;
        AVG()计算平均值SELECT AVG(age) FROM students;
        MAX()返回最大值SELECT MAX(price) FROM products;
        MIN()返回最小值SELECT MIN(price) FROM products;

        COUNT()

        统计表中某个列的行数,或者统计总的。

        【MySQL】基本查询(第二弹)


        SUM()

        【MySQL】基本查询(第二弹)

        sum可以统计某一列或者多列的总和。


        AVG()

        求平均值函数:

        【MySQL】基本查询(第二弹)

        MAX()

        max函数和min函数的用法都一样,求一列中的最小值或者最大值。

        7.group by

        select column1, column2, .. from table group by column;
        

        GROUP BY 是 SQL 语句中的 分组 操作,通常与 聚合函数(如 COUNT()、SUM()、AVG() 等)一起使用,用于按照指定的字段对数据进行分组,并对每个组执行计算。

        这里我已经准备了三张表,用于测试和讲解group by。

        表:

        员工表:

        【MySQL】基本查询(第二弹)


        工资等级表:

        【MySQL】基本查询(第二弹)


        部门表:

        【MySQL】基本查询(第二弹)


        7.1如何显示每个部门的平均工资和最高工资

        首先可以确定的是查的是最高工资和平均工资,如果只查这两个,我们可以直接像下面这样:

        【MySQL】基本查询(第二弹)

        但是现在有外加条件,就是每个部门,意思就是我们要将相同部门分为一组,然后在相同部门当中求出最高工资和平均工资,所以接下来登场的就是group by:

        【MySQL】基本查询(第二弹)

        7.2显示每个部门的每种岗位的平均工资和最低工资

        和上一个一样,首先是看我们查的是什么,然后再看分组,这次是每个部门的每种岗位,意思就是先分为每个部门,之后再分为每种岗位,这才思路清晰了,我们先查最低工资和平均工资:

        【MySQL】基本查询(第二弹)

        最小值查到之后,分组:

        【MySQL】基本查询(第二弹)


        7.3显示平均工资低于2000的部门和它的平均工资

        这里首先我们查的是平均工资低于2000的,这里就不能用where条件,这里需要搭配到having使用:

        【MySQL】基本查询(第二弹)


        8.总结

        在本文中,我们探讨了数据库操作的多个关键方面,包括 筛选分页结果、更新(Update)、删除(Delete)、截断表(Truncate)、插入查询结果、聚合函数 以及 Group By 的使用。这些 SQL 语句和技巧在日常开发和数据处理过程中至关重要。

        通过合理运用这些 SQL 语句,我们可以提高数据库查询的效率、优化数据存储,并更好地管理数据的增删改查。同时,在实际应用中,需要注意 SQL 语句的优化,如索引的使用、避免不必要的全表扫描等,以提升数据库的性能。

        希望本文的内容能帮助你更好地掌握 SQL 操作,提高数据库管理的能力!如果有任何问题,欢迎交流与探讨。

免责声明:我们致力于保护作者版权,注重分享,被刊用文章因无法核实真实出处,未能及时与作者取得联系,或有版权异议的,请联系管理员,我们会立即处理! 部分文章是来自自研大数据AI进行生成,内容摘自(百度百科,百度知道,头条百科,中国民法典,刑法,牛津词典,新华词典,汉语词典,国家院校,科普平台)等数据,内容仅供学习参考,不准确地方联系删除处理! 图片声明:本站部分配图来自人工智能系统AI生成,觅知网授权图片,PxHere摄影无版权图库和百度,360,搜狗等多加搜索引擎自动关键词搜索配图,如有侵权的图片,请第一时间联系我们。

目录[+]

取消
微信二维码
微信二维码
支付宝二维码