MySQL中的GREATEST()函数用于分别从给定参数中找到最大值。如果任何给定值为NULL,则返回NULL。否则,它将返回最大值。
用法:
GREATEST(X1, X2, X3, ...)
参数:如上所述,该方法接受语法中的N个参数,如下所述:
X1,X2,X3…:要评估的最大值的列表。
返回:它返回最大值。
Example-1:
使用GREATEST()函数查找给定数字之间的最大数字。
SELECT GREATEST(10, 20, 30, 40, 50) AS Greatest_Value;
输出:
Greatest_Value |
---|
50 |
示例2:
使用GREATEST()函数查找给定字符串之间的最大值。
SELECT GREATEST('MySQL', 'MS ACCESS', 'SQL') AS GreatestValue_String;
输出:
GreatestValue_String |
---|
SQL |
示例3:
当值为NULL时,使用GREATEST()函数在给定数字之间查找最大数。
SELECT GREATEST(10, 20, 30, 40, 50, NULL) AS Greatest_Value;
输出:
Greatest_Value |
---|
NULL |
示例4:
GREATEST函数还可用于查找列数据之间的最大值。为了演示,创建一个名为Student的表。
CREATE TABLE Student( Student_id INT AUTO_INCREMENT, Student_name VARCHAR(100) NOT NULL, Student_Class VARCHAR(20) NOT NULL, Subject1 INT NOT NULL, Subject2 INT NOT NULL, Subject3 INT NOT NULL, Subject4 INT NOT NULL, PRIMARY KEY(Student_id ) );
现在将一些数据插入到Student表中-
INSERT INTO Student(Student_name, Student_Class, Subject1, Subject2, Subject3, Subject4) VALUES ('Sayan', 'X', 81, 90, 86, 92 ), ('Nitin', 'X', 90, 84, 88, 91 ), ('Aniket', 'X', 81, 80, 87, 95 ), ('Abdur', 'X', 85, 90, 80, 90 ), ('Sanjoy', 'X', 88, 82, 84, 90 );
显示学生表中的所有数据-
Select * From Student ;
学生卡 | Student_name | Student_Class | 主题1 | 主题2 | 主题3 | 主题4 |
---|---|---|---|---|---|---|
1 | Sayan | X | 81 | 90 | 86 | 92 |
2 | Nitin | X | 90 | 84 | 88 | 91 |
3 | Aniket | X | 81 | 80 | 87 | 95 |
4 | Abdur | X | 85 | 90 | 80 | 90 |
5 | Sanjoy | X | 88 | 82 | 84 | 90 |
现在,我们将为所有学科的每个学生找到最出色的成绩。
Select Student_id, Student_name, GREATEST(Subject1, Subject2, Subject3, Subject4) AS Greatest_Mark FROM Student;
输出:
学生卡 | Student_name | Greatest_Mark |
---|---|---|
1 | Sayan | 92 |
2 | Nitin | 91 |
3 | Aniket | 95 |
4 | Abdur | 90 |
5 | Sanjoy | 90 |
注:本文由纯净天空筛选整理自 GREATEST() function in MySQL。非经特殊声明,原始代码版权归原作者所有,本译文未经允许或授权,请勿转载或复制。