我尝试过但失败了:
mysql> select max(1,0);
ERROR 1064 (42000):您的 SQL 语法有错误;检查手册 与您的 MySQL 服务器版本相对应,以便使用正确的语法 第 1 行“0)”附近
获取一组行中某一列的最大值:
SELECT MAX(column1) FROM table; -- expect one result
获取每行的一组列、文字或变量的最大值:
SELECT GREATEST(column1, 1, 0, @val) FROM table; -- expect many results
您可以使用具有不可为空字段的 GREATEST 函数。 如果此值之一(或两个)可以为 NULL,请勿使用它(结果可以为 NULL)。
select
if(
fieldA is NULL,
if(fieldB is NULL, NULL, fieldB), /* second NULL is default value */
if(fieldB is NULL, field A, GREATEST(fieldA, fieldB))
) as maxValue
您可以将 NULL 更改为您首选的默认值(如果两个值都是 NULL)。
选择 GREATEST(value1, value2) 作为最大值;