Navicat 部落格

介紹彙總查詢 2023 年 12 月 21 日,由 Robert Gravelle 撰寫

儘管基本的 SQL 查詢可以擷取、插入、更新和刪除記錄,但彙總查詢能在大型結果集中提供總和、平均值或最大最小值等資訊,將資料庫互動提升到一個新水平。在本文中,我們將探索彙總 SQL 查詢的基礎知識,研究如何有效地使用它們來分析和總結資料。

理解彙總函式

SQL 中的彙總函式能對一組資料列進行操作,並傳回單一值作為輸出。當對資料庫中的資料進行計算時,這些函式非常有用。一些常用的彙總函式有以下幾個:

1. COUNT()

COUNT() 函式用於計算符合指定條件的列數目。它可以用於計算所有列或滿足特定條件的列數目。

        
SELECT COUNT(*) AS total_records FROM employees;
    

2. SUM()

SUM() 函式用於計算數值列的總和。

        
SELECT SUM(salary) AS total_salary FROM employees;
    

3. AVG()

AVG() 函式用於計算數值列的平均值。

        
SELECT AVG(age) AS average_age FROM students;
    

4. MAX() 和 MIN()

MAX()MIN() 函式分別用於識別欄中的最大值和最小值。

        
SELECT MAX(price) AS max_price, MIN(price) AS min_price FROM products;
    

使用 GROUP BY 分組資料

SQL 中彙總查詢的一個強大功能是能夠使用 GROUP BY 子句根據特定條件對資料進行分組。這有助於分析資料的子集,從而獲得更細緻的結果。

使用 COUNT() 分組

        
SELECT department, COUNT(*) AS employee_count
FROM employees
GROUP BY department;
    

使用 AVG() 分組

        
SELECT department, AVG(salary) AS average_salary
FROM employees
GROUP BY department;
    

使用 HAVING 篩選群組

HAVING 子句需要與 GROUP BY 一起使用,根據應用於分組資料的條件篩選彙總查詢的結果。

        
SELECT department, AVG(salary) AS average_salary
FROM employees
GROUP BY department
HAVING AVG(salary) > 50000;
    

組合使用多個彙總函式

SQL 允許在單一查詢中組合使用多個彙總函式,以便全面深入瞭解資料。

        
SELECT department, COUNT(*) AS employee_count, AVG(salary) AS average_salary
FROM employees
GROUP BY department;
    

在 Navicat 中使用彙總函式

如果你不熟識函式的確切名稱或其輸入參數,可以在 Navicat 編輯器中開始輸入函式名稱,它會顯示一個符合輸入的選項清單,你可以從中選取一個,Navicat 會自動完成該詞語。彙總函式通常用希臘字母 Sigma 符號 (Σ) 表示:

AVG_function_in_autocomplete_list (57K)

總結

在關聯式資料庫中,彙總 SQL 查詢是資料分析和資料報告不可或缺的工具。無論你是在總結資訊、計算平均值還是根據特定條件分組資料,了解如何利用彙總查詢中的函式和子句(如 GROUP BY 和 HAVING)對於熟習資料庫查詢至關重要。

Navicat 文章
頻道記錄
分享
部落格封存檔