MySQL 中的 MIN() 函數用於返回表中一組值中的最小值。它是一個聚合函數,當我們需要找到最小的數字、選擇最便宜的產品等時很有用。
用法
以下是 MySQL 中 MIN() 函數的基本語法:
SELECT MIN ( DISTINCT aggregate_expression)
FROM table_name(s)
[WHERE conditions];
參數說明
該函數使用以下參數:
aggregate_expression:它是必需的表達式。它指定將從中返回最小值的列或表達式名稱。
Table_name(s):它指定我們要從中檢索記錄的表。 FROM 子句中必須至少列出一個表。
WHERE 條件:可選。它指定要選擇的記錄必須滿足的條件。
DISTINCT:它允許我們返回表達式中不同值的最小值。但是,它不會影響 MIN() 函數,並且不使用此關鍵字也會產生相同的結果。
MySQL MIN() 函數示例
借助各種示例,讓我們了解 MIN 函數在 MySQL 中的工作原理。考慮我們的數據庫有一個名為 "employees" 的表,其中包含以下數據。
1. 基本示例
執行以下查詢,使用 MIN 函數查找表中可用員工的最低收入:
mysql> SELECT MIN(income) AS Minimum_Income FROM employees;
輸出
上麵的查詢在所有行中產生最小值的結果。執行後,我們將得到如下輸出:
2. 帶有 WHERE 子句的 MySQL MIN() 函數
WHERE 子句允許我們從所選記錄中過濾結果。以下語句從employee 表中找出所有行中的最低收入,WHERE 子句指定所有那些emp_age 列大於或等於32 且小於或等於40 的行。
mysql> SELECT MIN(income) AS Minimum_Income
FROM employees
WHERE emp_age >= 32 AND emp_age <= 40;
輸出
上麵的語句將得到如下輸出:
3. MySQL MIN() 函數與 GROUP BY 子句
GROUP BY 子句允許我們從多行收集數據並基於一列或多列對其進行分組。例如,以下語句使用帶有 GROUP BY 子句的 MIN() 函數來查找每個 emp_age 組的員工表中所有行中的最低收入。
mysql> SELECT emp_age, MIN(income) AS Minimum_Income
FROM employees
GROUP BY emp_age;
輸出
執行成功後,我們可以看到每個員工的收入按年齡分組返回:
4. 帶有 HAVING 子句的 MySQL MIN() 函數
HAVING 子句總是與 GROUP BY 子句一起使用來過濾表中的記錄。例如,下麵的語句返回所有員工的最低收入,根據他們的城市對他們進行分組,並返回 MIN(income)>150000 的結果。
mysql> SELECT city, MIN(income) AS Minimum_Income
FROM employees
GROUP BY city
HAVING MIN(income) > 150000;
輸出
該語句將返回如下輸出:
5. 帶有 DISTINCT 子句的 MySQL MIN() 函數
MySQL 使用 DISTINCT 關鍵字從列名中刪除重複的行。我們還可以將此子句與 MIN() 函數一起使用,以返回表中存在的唯一記錄數的最小收入值。
執行以下查詢,刪除員工表的收入列中的重複記錄,按城市分組,然後返回最小值:
mysql> SELECT emp_name, city, MIN(DISTINCT income) AS Minimum_Income
FROM employees
GROUP BY city;
輸出
該語句將給出如下輸出:
相關用法
- MySQL MINUTE()用法及代碼示例
- MySQL MID()用法及代碼示例
- MySQL MICROSECOND()用法及代碼示例
- MySQL MONTHNAME()用法及代碼示例
- MySQL MONTH()用法及代碼示例
- MySQL MAX()用法及代碼示例
- MySQL MAKE_SET()用法及代碼示例
- MySQL MD5用法及代碼示例
- MySQL MOD()用法及代碼示例
- MySQL MAKEDATE()用法及代碼示例
- MySQL MAKETIME()用法及代碼示例
- MySQL ROUND()用法及代碼示例
- MySQL REPEAT()用法及代碼示例
- MySQL POWER()用法及代碼示例
- MySQL LEAD() and LAG()用法及代碼示例
- MySQL IS_IPV4()用法及代碼示例
- MySQL WEEK()用法及代碼示例
- MySQL CHARACTER_LENGTH()用法及代碼示例
- MySQL CURTIME()用法及代碼示例
- MySQL weekofyear()用法及代碼示例
注:本文由純淨天空篩選整理自 MySQL MIN() Function。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。