我有一张桌子。从那里我需要返回一个字段的最大值。如果该行为空或者满足某些条件,则查询将返回NULL
。如果max返回NULL
,我需要返回NO ROWS。我该怎么做?我尝试过IS NULL,IF,COALESCE但我无法得到我需要的东西。
对不起,这是我的错。我不是要说'NO ROWS'这个词,如果它返回NULL
,我更不清楚我不想获得任何行(不应返回任何行)。我再次为我的错误道歉。
答案 0 :(得分:14)
你必须像这样使用HAVING:
SELECT MAX(field)
FROM yourtable
-- GROUP BY somefileds
HAVING MAX(field) is not null
HAVING指定聚合列值的条件。
答案 1 :(得分:4)
试试这个::
SELECT IFNULL(MAX(field), 'NO ROWS') FROM table
答案 2 :(得分:3)
在选择
中使用IF功能 SELECT IF(MAX(field) IS NULL, 'NO ROWS', MAX(field)) FROM table