MySQL - MAX() 函数



MySQL MAX() 函数是一种聚合函数。它用于检索特定列/表中值的**最大值**。

此函数主要用于用户需要查找存储数据中模式的情况。例如,考虑一家销售公司。该组织维护一个数据库来跟踪其销售情况。为了找到其销量最高的日期,可以在数据库表上应用 MAX() 函数。

语法

以下是 MySQL MAX() 函数的语法:

MAX(expr);

参数

此方法接受一个参数。下面描述了该参数:

  • expr: 可以是表达式或特定列,我们希望找到该列/表达式的最大值。

返回值

此函数返回指定表中指定列的最高(最大)值。

示例

在以下查询中,我们使用 CREATE TABLE 语句创建了一个名为 CUSTOMERS 的表,如下所示:

CREATE TABLE CUSTOMERS (
   ID INT AUTO_INCREMENT,
   NAME VARCHAR(20) NOT NULL,
   AGE INT NOT NULL,
   ADDRESS CHAR (25),
   SALARY DECIMAL (18, 2),
   PRIMARY KEY (ID)
);

下面的查询将 7 条记录添加到上面创建的表中:

INSERT INTO CUSTOMERS (ID,NAME,AGE,ADDRESS,SALARY) VALUES 
(1, 'Ramesh', 32, 'Ahmedabad', 2000.00 ),
(2, 'Khilan', 25, 'Delhi', 1500.00 ),
(3, 'Kaushik', 23, 'Kota', 2000.00 ),
(4, 'Chaitali', 25, 'Mumbai', 6500.00 ),
(5, 'Hardik', 27, 'Bhopal', 8500.00 ),
(6, 'Komal', 22, 'Hyderabad', 4500.00 ),
(7, 'Muffy', 24, 'Indore', 10000.00 );

要验证是否插入了记录,请执行以下查询:

Select * From CUSTOMERS;

以下是 CUSTOMERS 表:

ID NAME AGE ADDRESS SALARY
1 Ramesh 32 Ahmedabad 2000.00
2 Khilan 25 Delhi 1500.00
3 Kaushik 23 Kota 2000.00
4 Chaitali 25 Mumbai 6500.00
5 Hardik 27 Bhopal 8500.00
6 Komal 22 Hyderabad 4500.00
7 Muffy 24 Indore 10000.00

现在,我们使用 MySQL MAX() 函数计算表中所有客户的最大工资:

SELECT MAX(SALARY) from CUSTOMERS;

输出

这将产生以下结果:

MAX(SALARY)
10000.00

示例

如果从 MAX() 函数获得的结果集不包含任何行,则将显示**NULL** 值作为输出。

在下面的查询中,我们检索名为“Raj”的学生的最大 SALARY。但该表中没有“Raj”的记录。在这种情况下,将返回 NULL 值。

SELECT MAX(SALARY) FROM CUSTOMERS 
WHERE NAME = 'Raj';

输出

这将返回 NULL 作为输出:

MAX(SALARY)
NULL

示例

我们还可以在子查询中使用 MySQL MAX() 函数来计算客户的最大工资。

以下查询检索“SALARY”最高的客户的姓名:

SELECT * FROM CUSTOMERS 
WHERE SALARY = (SELECT MAX(SALARY) FROM CUSTOMERS);

输出

Muffy 是所有客户中工资最高的客户:

ID NAME AGE ADDRESS SALARY
7 Muffy 24 Indore 10000.00
广告