GREATEST( 数値X, 数値Y, ・・・ 数値N )
GREATEST関数を使用することで、引数の数値のうちどの数値が最も大きいかを調べることができます。
mysql> SELECT GREATEST( 5, -1, 90, -7, 0 ); +------------------------------+ | GREATEST( 5, -1, 90, -7, 0 ) | +------------------------------+ | 90 | +------------------------------+ 1 row in set (0.00 sec)
引数に文字が含まれていた場合、その文字は0として扱われます。
mysql> -- 文字は 0 として扱われる mysql> SELECT GREATEST( -1, -2, -3, 'あ' ); +------------------------------+ | GREATEST( -1, -2, -3, 'あ' ) | +------------------------------+ | 0 | +------------------------------+ 1 row in set (0.00 sec) mysql> SELECT GREATEST( -1, -2, -3, 'a', 1 ); +--------------------------------+ | GREATEST( -1, -2, -3, 'a', 1 ) | +--------------------------------+ | 1 | +--------------------------------+ 1 row in set (0.00 sec)
但し引数がすべて文字の場合は、0には変換されず文字同士で比較されます。
mysql> SELECT GREATEST( 'a', 'b', 'z' ); +---------------------------+ | GREATEST( 'a', 'b', 'z' ) | +---------------------------+ | z | +---------------------------+ 1 row in set (0.00 sec)
GREATEST | 最大値を調べる |