SQLite 多参数 MAX() 函数返回具有最大值的参数,如果任何参数为 NULL,则返回 NULL。多参数 MAX() 函数从左到右搜索其参数,以查找定义整理函数的参数,并使用该整理函数进行所有字符串比较。如果 MAX() 的参数均未定义整理函数,则使用 BINARY 整理函数。
注意:使用单个参数时,MAX() 函数作为聚合函数运行。
语法
MAX(expr1, expr2, ... expr_n)
参数
expr1, expr2, ... expr_n | 必填。 指定要计算的表达式列表。 |
返回值
返回表达式列表中的最大值.
示例 1:
下面的示例展示了 MAX() 函数的用法。
SELECT MAX(20, 30, 60, 10);
Result: 60
SELECT MAX('20', '30', '60', '10');
Result: '60'
SELECT MAX('D', 'G', 'X', 'A');
Result: 'X'
SELECT MAX('Alpha', 'Beta', 'Delta', 'Gamma');
Result: 'Gamma'
SELECT MAX('Alpha1', 'Alpha2', 'Alpha3', 'Alpha4');
Result: 'Alpha4'
SELECT MAX(20, 30, 60, 10, NULL);
Result: NULL
示例2:
考虑一个名为 Sample 的数据库表,其中包含以下记录:
Data | x | y | z |
---|---|---|---|
Data1 | 10 | 0 | 11 |
Data2 | 20 | 15 | 12 |
Data3 | 30 | 30 | 13 |
Data4 | 40 | 45 | 14 |
Data5 | 50 | 60 | 15 |
要获得最大的值,当值为比较列x、列y和列z,可以使用以下查询:
SELECT *, MAX(x, y, z) AS MAX_Value FROM Sample;
这将产生结果如下:
Data | x | y | z | MAX_Value |
---|---|---|---|---|
Data1 | 10 | 0 | 11 | 11 |
Data2 | 20 | 15 | 12 | 20 |
Data3 | 30 | 30 | 13 | 30 |
Data4 | 40 | 45 | 14 | 45 |
Data5 | 50 | 60 | 15 | 60 |