当前第2页 返回上一页
【例】在orderitems表中,使用sum()函数统计不同订单号中订购的水果总量,SQL语句如下:
1 | mysql> select o_num,sum(quantity) as items_total -> from orderitems -> group by o_num;+-------+-------------+| o_num | items_total |+-------+-------------+| 30001 | 33 || 30002 | 2 || 30003 | 100 || 30004 | 50 || 30005 | 30 |+-------+-------------+5 rows in set (0.00 sec)
|
sum函数在计算时,忽略值为null的行。
(3)avg()函数
- avg()函数通过计算返回的行数和每一列数据的和,求得指定列数据的平均值。
- avg()函数使用时,其参数为要计算的列名称,如果要得到多个列的多个平均值,则需要在每一列上使用avg()函数。
【例1】在fruits表中,查询s_id=103的供应商的水果价格的平均值,SQL语句如下:
1 | mysql> select avg(f_price) as avg_price -> from fruits -> where s_id = 103;+-----------+| avg_price |+-----------+| 5.700000 |+-----------+1 row in set (0.05 sec)
|
【例2】在fruits表中,查询每一个供应商的水果价格的平均值,SQL语句如下:
1 | mysql> select s_id,avg(f_price) as avg_price -> from fruits -> group by s_id;+------+-----------+| s_id | avg_price |+------+-----------+| 104 | 7.000000 || 101 | 6.200000 || 103 | 5.700000 || 107 | 3.600000 || 102 | 8.933333 || 105 | 7.466667 || 106 | 15.700000 |+------+-----------+7 rows in set (0.00 sec)
|
group by 关键字根据s_id字段对记录进行分组,然后计算出每个分组的平均值,这种分组求平均值的方法非常有用。例如,求不同班级学生成绩的平均值,求不同部门工人的平均工资,求各地的年平均气温等。
(4)max()函数
- max()返回指定列中的最大值。
- max()函数除了用来找出最大的列值或日期值之外,还能返回任意列中的最大值,包括返回字符类型的最大值。
【例1】在fruits表中查找市场上价格最高的水果值,SQL语句如下:
1 | mysql> select max(f_price) as max_price from fruits;+-----------+| max_price |+-----------+| 15.70 |+-----------+1 row in set (0.05 sec)
|
【例2】在fruits表中查找不同供应商提供的价格最高的水果值,SQL语句如下:
1 | mysql> select s_id,max(f_price) as max_price -> from fruits -> group by s_id;+------+-----------+| s_id | max_price |+------+-----------+| 104 | 7.60 || 101 | 10.20 || 103 | 9.20 || 107 | 3.60 || 102 | 11.20 || 105 | 11.60 || 106 | 15.70 |+------+-----------+7 rows in set (0.00 sec)
|
【例3】在fruits表中查找f_name的最大值,SQL语句如下:
1 | mysql> select max(f_name) from fruits;+-------------+| max(f_name) |+-------------+| xxxx |+-------------+1 row in set (0.00 sec)
|
(5)min()函数
- min()返回查询列中的最小值。
【例1】在fruits表中查找市场上价格最低的水果值,SQL语句如下:
1 | mysql> select min(f_price) as min_price -> from fruits;+-----------+| min_price |+-----------+| 2.20 |+-----------+1 row in set (0.00 sec)
|
【例2】在fruits表中查找不同供应商提供的价格最低的水果汁,SQL语句如下:
1 | mysql> select s_id,min(f_price) as min_price -> from fruits -> group by s_id;+------+-------------+| s_id | min_price |+------+-------------+| 104 | 6.40 || 101 | 3.20 || 103 | 2.20 || 107 | 3.60 || 102 | 5.30 || 105 | 2.60 || 106 | 15.70 |+------+-------------+7 rows in set (0.00 sec)
|
相关免费学习推荐:mysql数据库(视频)
以上就是MySQL数据查询之:使用集合/聚合函数查询的详细内容,更多文章请关注木庄网络博客!!
返回前面的内容
相关阅读 >>
mysql数据查询之:使用集合/聚合函数查询
更多相关阅读请进入《mysql聚集查询》频道 >>
机械工业出版社
本书主要讲述了数据模型、基于对象的数据库和XML、数据存储和查询、事务管理、体系结构等方面的内容。
转载请注明出处:木庄网络博客 » MySQL数据查询之:使用集合/聚合函数查询