8.16.2 GREATEST
指定した対象データの値のうち,最大値を返します。
数データ同士の比較だけではなく,文字データ同士の比較,日時データ同士の比較などもできます。
- 〈この項の構成〉
(1) 指定形式
スカラ関数GREATEST::=GREATEST(対象データ1〔,対象データ2〕…) 対象データ1::=値式 対象データ2::=値式
(2) 指定形式の説明
- 対象データ1,対象データ2,…:
-
最大値を求める数データを指定します。
指定規則を次に示します。
-
対象データは,値式の形式で指定します。値式については,「7.21 値式」を参照してください。
-
対象データは255個まで指定できます。
-
対象データに指定できるデータ型は,数データ,文字データ,または日時データです。
-
対象データ1,対象データ2,…には,比較できるデータ型を指定してください。比較できるデータ型については,「6.2.2 変換,代入,比較できるデータ型」の「(1) 比較できるデータ型」を参照してください。ただし,次のデータは比較できません。
・DATE型のデータと,日付を表す既定の入力表現の文字データ
・TIME型のデータと,時刻を表す既定の入力表現の文字データ
・TIMESTAMP型のデータと,時刻印を表す既定の入力表現の文字データ
既定の入力表現については,「6.3.3 既定の文字列表現」を参照してください。
-
対象データ1には,?パラメタを単独で指定できません。
-
対象データ2以降に?パラメタを単独で指定した場合,?パラメタのデータ型には,対象データ1のデータ型が仮定されます。
-
(3) 規則
-
実行結果のデータ型とデータ長は,「7.21.2 値式の結果のデータ型」で説明している規則に従って決まります。
-
実行結果の値は,非ナル値制約なし(ナル値を許す)となります。
-
指定した対象データのどれかがナル値の場合,実行結果はナル値になります。
(4) 例題
- 例題
-
表T1のC1列〜C4列の値を比べて,その中の最大値を求めます。
SELECT GREATEST("C1","C2","C3","C4") FROM "T1"