mysql 聚合函數用法是什麼

2020-10-19 18:00:50

mysql聚合函數用法:1、使用SELECT語句返回系列值的總數,程式碼為【SELECT SUM(數量) AS 總數】;2、使用AVG函數計算平均數,程式碼為【SELECT AVG(單價* 數量) As 平均金額】。

更多相關免費學習推薦:(視訊)

mysql聚合函數用法:

1、SUM函數:

我們先從SUM函數開始。這個函數通常在SELECT語句中使用,返回系列值的總數。假設產品專案經理想了解目前為止商品的總銷售額,那麼我們可以使用以下的查詢指令碼:

  SELECT SUM(數量) AS 總數 
  FROM ProductOrders

  執行語句將返回以下結果:

  Total 
  ----------- 
  1837

2、AVG函數(平均函數)

使用方法和SUM類似,它給我們提供系列值的算術平均數。這次我們可以嘗試稍微複雜點的任務:找出北美洲大陸所有訂單的金額平均值。注意,我們需要將「數量」列和「單價」列相乘計算出每張訂單的金額總數。查詢指令碼如下:

SELECT AVG(單價* 數量) As 平均金額 
FROM ProductOrders 
WHERE 所在地 = 「北美洲」

返回結果如下:

平均金額 
--------------------- 
862.3075

3、COUNT計數函數

  SQL提供了COUNT函數來查詢滿足設定標準的記錄的數量。我們可以使用單獨COUNT(*)語法來檢索一個表內的行數。此外,還可以利用WHERE子句來設定計數條件,返回特定記錄的條數。例如,假設我們的產品銷售經理想了解公司處理了多少張要求購買100個以上產品的訂單。下面是滿足這個條件的SQL查詢指令碼:

SELECT COUNT(*) AS '大訂單數量'
FROM ProductOrders
WHERE 數量> 100

返回結果如下:

大訂單數量 
---------------------- 
3

  COUNT函數還允許使用 DISTINCT關鍵字和表示式來計算滿足表示式的值在目標資料中出現的數量。同樣地,還可以使用ALL關鍵字來返回滿足表示式的值的全部數量,不管其中有沒有重複值。例如,產品經理想通過一個簡單查詢返回資料庫中「所在地」的數量。

  首先我們來看看使用ALL關鍵字的查詢:

SELECT COUNT(ALL 所在地) As '所在地數量'
FROM ProductOrders

返回的結果為:

所在地數量 
-------------------- 
7

  顯然這不是我們需要的結果。因為根據ProductOrders表所示,所有訂單的所在地只有三個,分別是北美洲、非洲、歐洲。下面讓我們來用DISTINCT關鍵字來代替看看:

SELECT COUNT(DISTINCT 所在地) As '所在地數量'
FROM ProductOrders

返回的結果為:

所在地數量
-------------------- 
3

這才是我們想要的結果。

4、最大值和最小值

  在本文的最後一節,我們來看看SQL為我們提供用來查詢滿足給定表示式的最大值和最小值的函數。MAX()函數返回給定資料集中的最大值。我們可以給該函數一個欄位名稱來返回表中給定欄位的最大值。還可以在MAX()函數中使用表示式和GROUP BY從句來加強查詢功能。

  還是ProductOrders表,假設我們的產品經理想要從這個資料庫中找到給公司帶來最多收入的那份訂單。我們可以使用以下查詢來找到這張訂單,並返回該訂單的銷售總金額:

  SELECT MAX(數量 * 單價)As '最大的訂單' 
  FROM ProductOrders

  返回結果如下:

  最大的訂單 
  --------------------- 
  2517.58

  MIN()函數的用法類似,但返回表示式的最小值。讓我們用MIN()函數來嘗試稍微複雜一點的查詢。我們的銷售部門目前正在分析小訂單的資料。他們想要查詢每個所在地的最小訂單。這除了要在表示式中計算值外,還需要用到GROUP BY從句來總結所在地的資料。SQL查詢如下:

SELECT 所在地, MIN(數量 * 單價) AS '最小訂單'
FROM ProductOrders 
GROUP BY 所在地

返回結果如下:

所在地       最小訂單
------------- --------------------- 
非洲         167.04
歐洲        2099.02
北美洲    70.65

以上就是mysql 聚合函數用法是什麼的詳細內容,更多請關注TW511.COM其它相關文章!