首页 » Web前端 » phpmysqlgroupby技巧_面试官讲下MySQL中group by的3种用法 轨范员我思虑下

phpmysqlgroupby技巧_面试官讲下MySQL中group by的3种用法 轨范员我思虑下

访客 2024-12-15 0

扫一扫用手机浏览

文章目录 [+]

我们来复习下

group by 含义

by后面跟指定的规则对数据进行分组,分组便是将一个“数据集”根据条件拆分多少“小数据集”,然后针对“小数据集”进行数据处理。

phpmysqlgroupby技巧_面试官讲下MySQL中group by的3种用法 轨范员我思虑下

初始表数据表(一个职工表)

phpmysqlgroupby技巧_面试官讲下MySQL中group by的3种用法 轨范员我思虑下
(图片来自网络侵删)
数据

用法1(去重)

distinct 可以去重,实在group by 也是自带去重效果的

如下我根据条件(部门)去重,我看了下默认是每个部门的第一条数据

实际业务一样平常分组都会合营聚合函数利用

用法2(合营聚合函数)

合营聚合函数一起打算

常见的5个聚合函数sum,max,min,avg,count

统计每个部门人为最高的结果

用法3(合营HAVING)

求每部门最高人为的员工

group by 合营max能轻松求出每部门最高人为,

但是求最高人为的员工信息就须要2张表关联查询了

小白们牢记不要以为这个SQL便是终极精确结果

除了salary、dept部门是精确的,其他字段是分组前默认第一条数据,

以是如果你是顺序插入,到可以根据实际业务去1条SQL搞定(不推举)。

精确写法join

join写法性能最佳

实际业务这个 dept必须是索引才可以

查单张表求最大人为方法

这里我是根据人为从大到小顺序插入的,

group by 后查出来的便是最大人为(默认第一条数据)

group by 字段 ORDER BY null

order by null真可以提升性能,请见如下MySQL实行操持

group by 总结1 group by返回的数据是有序的,如果不想排序摧残浪费蹂躏资源可往后面跟 ORDER BY null,实行操持可能会少一个Using filesortselect 行(原则上只能是分组列或函数列),但由于版本问题,可能会输出第一行的其他字段数据合营聚合函数统计出来的

编程、后端开拓、口试的程序员、数据库、打算机软件、MySQL

以上皆为个人理解,如果有理解错的地方,欢迎专家指出
标签:

相关文章

大数据在财务管理中的应用与创新

随着信息技术的飞速发展,大数据时代已经来临。大数据技术在各行各业的应用逐渐深入,财务管理领域也不例外。本文将探讨大数据在财务管理中...

Web前端 2024-12-17 阅读0 评论0

大数据在私彩领域的应用与挑战

随着互联网技术的飞速发展,大数据在各个领域的应用越来越广泛。私彩作为一种特殊的娱乐方式,也逐渐进入人们的视线。本文将探讨大数据在私...

Web前端 2024-12-17 阅读0 评论0

大数据备货,未来供应链管理的关键趋势

随着大数据技术的飞速发展,企业对供应链管理的认识逐渐从传统经验式管理向数据驱动管理转变。大数据备货作为供应链管理的重要环节,正成为...

Web前端 2024-12-17 阅读0 评论0

大数据安全,守护信息时代的生命线

随着互联网技术的飞速发展,大数据已经成为当今世界的重要战略资源。大数据在为我们带来便利的也带来了前所未有的安全挑战。如何保障大数据...

Web前端 2024-12-17 阅读0 评论0

大数据奇景,解码新时代的数据洪流

随着信息技术的飞速发展,大数据时代已经来临。数据,作为新时代的“石油”,正深刻地改变着我们的生活、工作和思维方式。在这个数据洪流中...

Web前端 2024-12-17 阅读0 评论0