6

私はテーブルを持っています。そこから、フィールドの最大値を返す必要があります。その行が空の場合、またはいくつかの条件を満たさない場合、クエリは を返しNULLます。max が a を返す場合、NO ROWS を返す必要がありますNULL。どうすればできますか?IS NULLIFCOALESCEを試しましたが、必要なものを取得できません。

申し訳ありませんが、それは私の間違いでした。私は「NO ROWS」という言葉を言うつもりはありませんNULL. 私の過ちを改めてお詫び申し上げます。

4

3 に答える 3

15

次のように、HAVING を使用する必要があります。

SELECT MAX(field)
FROM yourtable
-- GROUP BY somefileds
HAVING MAX(field) is not null

HAVING は、集計列の値の条件を指定します。

于 2013-01-04T10:26:35.273 に答える
4

これを試して ::

SELECT IFNULL(MAX(field), 'NO ROWS') FROM table
于 2013-01-04T09:19:26.007 に答える
3

選択でIF関数を使用する

SELECT IF(MAX(field) IS NULL, 'NO ROWS', MAX(field)) FROM table

于 2013-01-04T09:18:05.377 に答える