當前位置: 首頁>>代碼示例 >>用法及示例精選 >>正文


MySQL GREATEST()用法及代碼示例


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。非經特殊聲明,原始代碼版權歸原作者所有,本譯文未經允許或授權,請勿轉載或複製。