SQL - MIN() 和 MAX() 函数:發揮極端的威力

你好,有志於學習 SQL 的同好們!今天,我們將深入探討 SQL 中兩個非常有用的函數:MIN() 和 MAX()。這些函數就像是數據分析的超級英雄,飛撲過去找到你的數據集中的最小值和最大值。所以,請繫好安全帶,讓我們一起踏上這個令人興奮的旅程!

SQL - Min & Max

了解基礎知識

在我們深入細節之前,讓我們花一會兒時間了解這些函數到底是如何工作的。想像你是一名老師(就像我一樣!)手中有一本滿滿的成績簿。如果你想要快速找到最高和最低的分數,你會使用 MIN() 和 MAX()。這就是這些函數在 SQL 中的基本作用,但它們可以對任何類型的數據進行操作。

SQL MAX() 函數: Reach for the Stars

MAX() 是什麼?

MAX() 函數如其名所示——它從一組值中返回最大值。這就像有一個非常高效的助手,能夠立刻在一長串數字中找到最高的數字。

基本語法

以下是使用 MAX() 函數的方法:

SELECT MAX(column_name) FROM table_name;

實際範例

假設我們有一個名為 students 的表,其中有一個名為 test_score 的列。要找到最高的測試分數,我們會寫:

SELECT MAX(test_score) FROM students;

這個查詢將返回一個單一值——整個表中最高的測試分數。

但是,如果我們想知道更多呢?讓我們來點花巧的:

SELECT student_name, test_score
FROM students
WHERE test_score = (SELECT MAX(test_score) FROM students);

這個查詢會告訴我們獲得最高分的學生姓名和他們的分數。這就像宣布畢業生致辭者!

MAX() 與 GROUP BY

現在,假設我們想要找到每個科目中最高的分數。我們可以使用 MAX() 與 GROUP BY:

SELECT subject, MAX(test_score) AS highest_score
FROM students
GROUP BY subject;

這個查詢會向我們顯示每個科目中最高的分數。這就像為每個類別設立一個名人堂!

SQL MIN() 函數:在粗糙中尋找鑽石

MIN() 是什麼?

正如 MAX() 找到最高值一樣,MIN() 尋找最低值。它同樣強大,但方向相反。

基本語法

MIN() 的語法與 MAX() 非常相似:

SELECT MIN(column_name) FROM table_name;

實際範例

再次使用我們的 students 表,讓我們找到最低的測試分數:

SELECT MIN(test_score) FROM students;

這將返回表中的最低分數。但記住,每個分數都代表了學生的努力,所以讓我們找出誰可能需要一些額外的幫助:

SELECT student_name, test_score
FROM students
WHERE test_score = (SELECT MIN(test_score) FROM students);

這個查詢會顯示得分最低的學生的姓名,給我們提供提供額外支持的机会。

MIN() 與 GROUP BY

與我們的 MAX() 範例一樣,我們可以使用 MIN() 與 GROUP BY 來找到每個科目中的最低分數:

SELECT subject, MIN(test_score) AS lowest_score
FROM students
GROUP BY subject;

這可以幫助我們識別我們課程中哪些科目可能需要更多的關注。

結合 MIN() 和 MAX():動態二人組

現在,讓我們看看這些函數一起工作!我們可以在單一查詢中使用 MIN() 和 MAX() 來獲取範圍內的值:

SELECT
subject,
MIN(test_score) AS lowest_score,
MAX(test_score) AS highest_score,
MAX(test_score) - MIN(test_score) AS score_range
FROM students
GROUP BY subject;

這個查詢為我們提供了每個科目的一個綜合視圖,顯示最低分數、最高分數以及它們之間的範圍。這就像從鳥瞰的角度來看待我們學生的表現!

關於 NULL 值的說明

一件重要的事情要記住:MIN() 和 MAX() 會忽略 NULL 值。如果列中包含 NULL 值,這些函數將返回非 NULL 值的最小值或最大值。這就像它們有一個特別的 NULL-探测器,讓它們只關注實際數據。

結論:精通極端值

好了,各位!我們已經探討了 SQL 中的 MIN() 和 MAX() 函數。這些強大的工具讓我們能夠快速找到數據中的極端值,無論我們是在尋找頂尖表現者、需要改進的領域,還是只是嘗試了解我們數據的範圍。

記住,在數據的世界裡,每個值都講述著一個故事。MIN() 和 MAX() 帮助我們找到這些故事的開始和結尾,給我們提供可以驅動決策和改進的見解。

在你繼續你的 SQL 旅程時,請將這些函數放在你的工具箱中。它們簡單但強大,你會發現自己不斷地使用它們。快樂查詢,願你的數據總是告訴你有趣的故亊!

函數 描述 範例
MAX() 從一組值中返回最大值 SELECT MAX(column_name) FROM table_name;
MIN() 從一組值中返回最小值 SELECT MIN(column_name) FROM table_name;

Credits: Image by storyset