SQL使用聚集函数实现对数据汇总
目录
- 汇总数据
- 聚集函数
- AVG函数
- COUNT函数
- MAX函数
- MIN函数
- SUM函数
- 聚集编程不同值
- 组合聚集函数
汇总数据
聚集函数
聚集函数:运行在行组上,计算和返回单个值的函数
SQL聚集函数:
函数 | 说明 |
---|---|
AVG() | 返回某列的平均值 |
COUNT() | 返回某列的行数 |
MAX() | 返回某列的最大值 |
MIN() | 返回某列的最小值 |
SUM() | 返回某列值之和 |
AVG函数
例:返回products表中所有产品的平均价格:
SELECT AVG(prod_price) AS avg_price FROM products;
AVG函数忽略列值为NULL的行
COUNT函数
确定表中行的数目或符合特定条件的行的数目。
例:返回customers表中客户的总数
SELECT COUNT(*) AS num_cust FROM customers;开发者_mariadb
例:只对具有电子邮件的客户计数
SELECT COUNT(cust_email) AS num_cust FROM customers;
MAX函数
SELECT MAX(prod_price) AS max_price FROM products;
用于文本数据时,如果数据按相应的列排序,则max返回最后一行。
MAX函数忽略列值为NULL的行
MIN函数
MIN函数与MAX函数正好相反
SUM函数
sum用来返回指定列值的和
例:检索所订http://www.devze.com购的物品的总数。
SELECT SUM(quantity) AS items_ordered FROM orderitems WHERE order_num = 20005;
SUM还可以与之前的计算字段进行联动
例:求总的订单金额
SELECT SUM(item_price*quantity) AS total_price FROM orderitems WHERE order_num = 20005;
聚集不同值
⚠️下面介绍聚集函数的DISTINCT的使用,mysql4.x是不能正常使用的。
SELECT AVG(DISTINCT prod_price) AS avg_price FROM products WHERE vend_id = 10js03;
DISTINCT不能用于COUNT(*)。
组合聚集函编程客栈数
SELECT COUNT(*) AS num_items, MIN(prod_price) AS price_min, MAX(prod_price)编程客栈 AS price_max, AVG(prod_price) AS price_avg FROM products;
到此这篇关于SQL使用聚集函数实现对数据汇总的文章就介绍到这了,更多相关SQL聚集函数内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!
精彩评论