程序師世界是廣大編程愛好者互助、分享、學習的平台,程序師世界有你更精彩!
首頁
編程語言
C語言|JAVA編程
Python編程
網頁編程
ASP編程|PHP編程
JSP編程
數據庫知識
MYSQL數據庫|SqlServer數據庫
Oracle數據庫|DB2數據庫
 程式師世界 >> 數據庫知識 >> MYSQL數據庫 >> MySQL綜合教程 >> MySQL數據匯總與聚集函數——MySQL系列(七)

MySQL數據匯總與聚集函數——MySQL系列(七)

編輯:MySQL綜合教程

1、聚集函數

聚集函數是運行在行組上,計算和返回單個值的函數。

SQL聚集函數 函數 說明 AVG() 返回某列的平均值 COUNT() 返回某列的行數 MAX() 返回某列的最大值 MIN() 返回某列的最小值 SUM() 返回某個列之和

(1)、AVG()函數

可以返回所有列的平均值,也可以返回特定列的平均值。
SELECT AVG(prd_price) AS avg_price FROM products
Where vend_id=1003;
將過濾出vend_id=1003的產品,avg是這些產品的平均值.

(2)、COUNT()函數

COUNT(*)對表中行的數目進行計數,不管表列中包含的是空(NULL)還是非空值; COUNT(column)對特定列中有值的行進行計算,忽略NULL值。

(3)、MAX()函數

MAX()返回指定列的最大值,要求指定列名,忽略NULL值。在MySQL中,MAX()函數可以對非數據列使用,在用於文本數據時,如果數據按相應的列排序,MAX()返回最後一行。

(4)、MIN()函數

MIN()返回指定列的最小值,要求指定列名,忽略NULL值。
在MySQL中,MIN()函數可以對非數據列使用,在用於文本數據時,如果數據按相應的列排序,MIN()返回最前面的一行。

(5)、SUM()函數

用來返回指定列的和(總計),忽略NULL值的行。
SELECT SUM(num) AS prod_sum---返回指定訂單號中的商品數量
FROM products
Where order_id=123456;
SUM()也可以合計計算值。
SELECT SUM(item_price*num) AS totol_price FROM order_items--返回訂單中所有商品價格和。
Where order_id=123456;

2、聚集不同值

DISTINCT關鍵字如下面的SQL將返回vend_id=1003的不同價格商品的平均值
SELECT AVG(DISTINCT prd_price) AS avg_price FROM products
Where vend_id=1003;

3、組合聚集函數

聚集函數可以組合使用
SELECT count(*) AS num,
            MIN(prod_price) AS price_min,
            MAX(prod_price) AS price_max,
            AVG(prod_price) AS price_avg
FROM products;

  1. 上一頁:
  2. 下一頁:
Copyright © 程式師世界 All Rights Reserved