Collections:
GREATEST() - Finding the Greatest/Maximum Value
How to find the greatest (maximum) value of a given list of values using the GREATEST() function?
✍: FYIcenter.com
GREATEST(val1, val2, ...) is a MySQL built-in function that
returns the greatest (maximum) value of a given list of values.
For example:
SELECT GREATEST(70, 89, 73, 99, 101, 110, 116, 101, 114);
-- +---------------------------------------------------+
-- | GREATEST(70, 89, 73, 99, 101, 110, 116, 101, 114) |
-- +---------------------------------------------------+
-- | 116 |
-- +---------------------------------------------------+
SELECT GREATEST('Grape', 'Orange', 'Banana', 'Apple');
-- +------------------------------------------------+
-- | GREATEST('Grape', 'Orange', 'Banana', 'Apple') |
-- +------------------------------------------------+
-- | Orange |
-- +------------------------------------------------+
If the arguments comprise a mix of multiple data types, GREATEST() converts them to the same data type using the following rules:
Here are examples with arguments of mix data types:
SELECT GREATEST(70, 89, 73, 99, 101, 'Banana', 'Apple');
-- +--------------------------------------------------+
-- | GREATEST(70, 89, 73, 99, 101, 'Banana', 'Apple') |
-- +--------------------------------------------------+
-- | Banana |
-- +--------------------------------------------------+
SELECT GREATEST(TRUE, 70, 89, NULL, 'Banana', 'Apple');
-- +-------------------------------------------------+
-- | GREATEST(TRUE, 70, 89, NULL, 'Banana', 'Apple') |
-- +-------------------------------------------------+
-- | NULL |
-- +-------------------------------------------------+
SELECT GREATEST(NOW(), 'Yesterday'), GREATEST('2023-12-16', 'Yesterday');
-- +------------------------------+-------------------------------------+
-- | GREATEST(NOW(), 'Yesterday') | GREATEST('2023-12-16', 'Yesterday') |
-- +------------------------------+-------------------------------------+
-- | 2023-12-16 18:19:27.000000 | Yesterday |
-- +------------------------------+-------------------------------------+
SELECT GREATEST(NOW(), '2099-12-01', CURRENT_TIMESTAMP());
-- +----------------------------------------------------+
-- | GREATEST(NOW(), '2099-12-01', CURRENT_TIMESTAMP()) |
-- +----------------------------------------------------+
-- | 2099-12-01 00:00:00 |
-- +----------------------------------------------------+
SELECT GREATEST(JSON_ARRAY(70, 89), JSON_ARRAY('70', '89'));
-- +------------------------------------------------------+
-- | GREATEST(JSON_ARRAY(70, 89), JSON_ARRAY('70', '89')) |
-- +------------------------------------------------------+
-- | [70, 89] |
-- +------------------------------------------------------+
Reference information of the GREATEST() function:
GREATEST(val1, val2, ...): max Returns the greatest (maximum) value of a given list of values. Arguments, return value and availability: val1, val2, ...: Two or more values to be examined. max: Return value. The maximum value of multiple values. Available since MySQL 4.0.
Related MySQL functions:
⇒ IF() - Conditional Value Selection
⇐ GET_LOCK() - Requesting User Defined Lock
2026-07-13, 1616🔥, 0💬
Popular Posts:
How to continue to the next iteration of a WHILE loop in SQL Server Transact-SQL? How to use CONTINU...
How To Recover a Dropped Index in Oracle? If you have the recycle bin feature turned on, dropped ind...
How To Count Rows with the COUNT(*) Function in SQL Server? If you want to count the number of rows,...
How to download Microsoft SQL Server 2005 Express Edition in SQL Server? Microsoft SQL Server 2005 E...
Where Is the Export Dump File Located in Oracle? If you are not specifying the dump directory and fi...