龙空技术网

MySQL聚合函数

Lin王发林 318

前言:

而今大家对“mysqldatebetween”大致比较重视,看官们都需要分析一些“mysqldatebetween”的相关知识。那么小编也在网络上搜集了一些对于“mysqldatebetween””的相关资讯,希望大家能喜欢,你们一起来了解一下吧!

很多时候,我们查询数据的时候都不会把明细数据查询出来,那样一般意义也不大。更多的时候是根据业务需求,把数据聚合成业务能直接使用的数据。MYSQL中有5个聚合函数,如下面5个,用得最多的还是count和sum,下面分别介绍一下用法。

【COUNT】

在MySQL中,COUNT()函数统计数据表中包含的记录行的总数,或者根据查询结果返回列中包含的数据行数,使用方法有以下两种:

COUNT(*)计算表中总的行数,无论某列有数值或者为空值;COUNT(字段名)计算指定列下总的行数,计算时将忽略空值的行。

求order表中,查询一共有多少条订单数,SQL语句如下↓

SELECT   COUNT(*) AS 总计订单数FROM   sql_study.order;

【SUM】

在MySQL中,SUM()是一个求总和的函数,返回指定列值的总和。

如果在没有返回匹配行SELECT语句中使用SUM函数,则SUM函数返回NULL,而不是0;DISTINCT运算符允许计算集合中的不同值;SUM函数忽略计算中的NULL值。

求order表中所有产品销售数量,SQL语句如下↓

SELECT     SUM(数量) AS 产品销售总量FROM   sql_study.order;

【AVG】

在MySQL中,AVG()函数通过计算返回的行数和每一行数据的和,求得指定列数据的平均值。

求order表中,2021年所有产品的平均单价,SQL语句如下↓

SELECT     AVG(单价) AS 产品平均价格FROM   sql_study.orderWHERE  日期 BETWEEN '2021-01-01' AND '2021-12-31'

【MAX/MIN】

在MySQL中,MAX()函数是用来返回指定列中的最大值。

求order表中,查询最大的单价价格,SQL预计如下↓

SELECT     MAX(单价) AS 最大单价FROM   sql_study.order;

在MySQL中,MIN()函数是用来返回指定列中的最小值。

求order表中,查询最小的单价价格,SQL预计如下↓

SELECT   MIN(单价) AS 最低单价FROM   sql_study.order

【结合GROUP BY】

正常情况下,聚合函数都是搭配着GROUP BY来使用的。可以是按省份聚合、产品聚合、时间聚合等等。下面演示每个品牌最低单价的聚合,其他几个聚合函数使用方式一样,SQL语句如下↓

SELECT   p.品牌,MIN(o.单价) AS 产品最低单价FROM   sql_study.order as o   left JOIN sql_study.product as p on o.产品id=p.产品idGROUP BY  o.产品id

还可以用ORDER BY排个序,求每个品牌累计销售价格的SQL语句,从高到低排序↓

SELECT   p.品牌,sum(单价*数量) AS 产品总价FROM   sql_study.order as o   left JOIN sql_study.product as p on o.产品id=p.产品idGROUP BY  o.产品idORDER BY  sum(单价*数量) DESC

End

~更多内容可关注微信同名公众号:Lin王发林

标签: #mysqldatebetween