首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >如何在MySQL中获得两个值的最大值?

如何在MySQL中获得两个值的最大值?
EN

Stack Overflow用户
提问于 2018-03-07 02:34:43
回答 3查看 0关注 0票数 0

我试过但失败了:

代码语言:javascript
复制
mysql> select max(1,0);
代码语言:javascript
复制
ERROR 1064 (42000): You have an error in your SQL syntax; check the manual 
that corresponds to your MySQL server version for the right syntax to use 
near '0)' at line 1
EN

回答 3

Stack Overflow用户

发布于 2018-03-07 09:39:33

最大GREAEST()

例如:

代码语言:javascript
复制
SELECT GREATEST(2,1);
票数 0
EN

Stack Overflow用户

发布于 2018-03-07 11:03:33

若要获得一组行的列的最大值,请执行以下操作:

代码语言:javascript
复制
SELECT MAX(column1) FROM table; -- expect one result

要获取每行的一组列,文字或变量的最大值:

代码语言:javascript
复制
SELECT GREATEST(column1, 1, 0, @val) FROM table; -- expect many results
票数 0
EN

Stack Overflow用户

发布于 2018-03-07 11:57:21

可以使用不可为空的字段使用GREATEST函数。 如果其中一个值(或两者)可以为NULL,则不要使用它(结果可能为NULL)。

代码语言:javascript
复制
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)。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/-100007531

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档