MySQL中的MIN()函数用于从表中返回一组值中的最小值。
以下是MIN() MySQL中的函数的基本语法:
SELECT MIN ( DISTINCT aggregate_expression) FROM table_name(s) [WHERE conditions];
此函数使用以下参数:
aggregate_expression - 是必需的表达式。它指定将从中返回最小值的列或表达式名称。
table_name - 它指定了要从中检索记录的表。在FROM子句中必须至少列出一个表。
WHERE conditions - 这是可选的。它指定了选择记录必须满足的条件。
DISTINCT - 它允许无涯教程返回表达式中最小的不同值。
让无涯教程借助各种示例来了解MIN函数在 MySQL 中的工作方式。考虑数据库有一个名为" employees"的表,其中包含以下数据。
执行以下使用MIN函数的查询,以找到表中可用的员工的最低收入:
mysql> SELECT MIN(income) AS Minimum_Income FROM employees;
上面的查询产生所有行中最小值的结果。执行后,无涯教程将得到如下输出:
WHERE子句允许无涯教程从所选记录中过滤结果。以下语句从employee表中查找所有行中的最低收入,WHERE子句指定 emp_age列大于或等于32且小于或等于40的所有行。
mysql> SELECT MIN(income) AS Minimum_Income FROM employees WHERE emp_age >= 32 AND emp_age
上面的语句将得到如下输出:
GROUP BY子句允许无涯教程从多个行中收集数据,并根据一个或多个列对其进行分组。例如,以下语句将MIN()函数与GROUP BY子句一起使用,以查找employee表中每个emp_age组的所有行中的最低收入。
mysql> SELECT emp_age, MIN(income) AS Minimum_Income FROM employees GROUP BY emp_age;
成功执行后,可以根据年龄对每个雇员进行分组,从而看到他们的收入回报:
HAVING子句始终与GROUP BY子句一起使用以从表中过滤记录。例如,以下语句返回所有雇员的最低收入,根据他们的城市将他们分组,并返回MIN(income)> 150000的结果。
mysql> SELECT city, MIN(income) AS Minimum_Income FROM employees GROUP BY city HAVING MIN(income) > 150000;
该语句将返回如下输出:
MySQL使用 DISTINCT 关键字从列名中删除重复的行。无涯教程还可以将此子句与MIN()函数一起使用,以返回表中存在的唯一记录数的最小收入值。
执行以下查询,删除雇员表的收入列中按城市分组的重复记录,然后返回最小值:
mysql> SELECT emp_name, city, MIN(DISTINCT income) AS Minimum_Income FROM employees GROUP BY city;
该语句将给出如下输出:
链接:https://www.learnfk.comhttps://www.learnfk.com/mysql/mysql-min.html
来源:LearnFk无涯教程网
祝学习愉快!(内容编辑有误?请选中要编辑内容 -> 右键 -> 修改 -> 提交!)