前言:
目前看官们对“数据库查询结果分组”大致比较关怀,看官们都需要分析一些“数据库查询结果分组”的相关文章。那么小编在网络上收集了一些有关“数据库查询结果分组””的相关资讯,希望你们能喜欢,小伙伴们一起来了解一下吧!所有内容收录在合集~SQL入门到熟练。欢迎点赞关注我哦~
经过这20节课的折腾,原本的数据库已经面目全非了,为了之后方便,还是恢复一下。
打开上方的file,然后运行这个地方,进入一个新的页面
选择这个位置
然后执行就可以了,嗖的一下调整了很多行。
工作中每天都要写查询来汇总数据
比如把不同地区,不同品类进行一个汇总,或者根据实际情况,进行一些相关的汇总,然后查看数据。也就是SQL中的聚合函数。
聚合函数是一段代码,MYsql是自己本身就带了函数的,内置函数。内置函数有很多种,其中就包含了聚合函数,也就是把一些数据聚合到一起,然后导出一个值。
这个和EXCEL一样,微软不断的对他进行研发,不断的推出新的函数,比如XLOOKUP,FILTER函数等新的函数,跑题了,excel也是有MAX,MIN,AVE,SUM,COUNT函数,SQL也有这些,进行运用的时候,也都是搭配()来使用。
比如查询金额的最大值和最小值。
和之前的区别是注意函数的运用,写的时候括号一定要有的,选择红色键的libf
这个查询不仅是数值,还可以是日期或者字符串。有时候会出现重复值,但是不需要重复,那就需要看到唯一值,这个时候只需要添加distinct关键词就可以。
比如可以写成
max(DISTINCT amount),
min(DISTINCT amount),
avg(DISTINCT amount),
count(DISTINCT payment_id)
当然实际运用中最常用的还是计算总销售额,GMV之类的,MAX可能是最高客单价,或者销冠什么的,那么sum就是总额,
有时候,需要计算的不是一张表的总额,而是某个人的总和,比如某个业务员或者某个客户,这个时候需要进行数据分组。
GROUP BY
后面跟着的就是分组的标准,比如客户id进行分组
不同的是之前是选择全部或者关键的几项,这次select后面直接跟着客户id,然后跟着函数,注意中间用逗号进行区分,然后用分组进行书写,得出结果,如果想要更加的清晰,可以添加order by进行排序,或者再添加desc进行倒序排序。
这个的顺序是先有select,后面可能跟着函数,中间有逗号进行区分
接着是from
可能有where
接着是group by
或许还想用order by
group by在order by之前,from和select之后。
完成了单个的分组,可以试试多列分组
比如这个,直接看写好的语句,只需要设置好条件,在select后面添加多个条件,然后用逗号进行分割就可以了。对应的条件再进行一下修改。
总结:虽然看起来好像有一点点复杂,其实就是进行了类似excel的排序和一些基础的函数操作,类似于sumif函数和排序的自定义排序,使用关键字这些,熟练之后还可以结合之前的join一起进行运用。