ESQL INTERVAL データ・タイプ

INTERVAL データ・タイプ値は、時間のインターバルを保持します。 以下に挙げる複数のサブタイプがあります。

上記のサブタイプはすべて時間のインターバルを記述するものであり、INTERVAL タイプの全演算が可能です。 たとえば、タイプ DATE、TIME、または TIMESTAMP との間で加算や減算が可能です。

CAST 関数を使って、あるサブタイプから別のサブタイプへ変換できます。 ただし、例外として、年月または月数で記述したインターバルを、日、時間、分、秒で記述したインターバルに変換することはできません。

月によって日数が異なるので、月と日を分けることが必要です。 1 月と 1 日というインターバルは、分かりにくいものであり、日数だけを使用した同等のインターバルに変換することはできません。

インターバル・リテラルは、次の構文で定義します。

INTERVAL <interval string> <interval qualifier>

インターバル・ストリングとインターバル修飾子の形式は、下の表で定義されています。

インターバル修飾子 インターバル・ストリング形式
YEAR '<year>' または '<sign> <year>' '10' または '-10'
YEAR TO MONTH '<year>-<month>' または '<sign> <year>-<month>' '2-06' または '- 2-06'
MONTH '<month>' または '<sign> <month>' '18' または '-18'
DAY '<day>' または '<sign> <day>' '30' または '-30'
DAY TO HOUR '<day> <hour>' または '<sign> <day> <hour>' '1 02' または '-1 02'
DAY TO MINUTE '<day> <hour>:<minute>' または '<sign> <day> <hour>:<minute>' '1 02:30' または '-1 02:30'
DAY TO SECOND '<day> <hour>:<minute>:<second>' または '<sign> <day> <hour>:<minute>:<second>' '1 02:30:15' または '-1 02:30:15.333'
HOUR '<hour>' または '<sign> <hour>' '24' または '-24'
HOUR TO MINUTE '<hour>:<minute>' または '<sign> <hour>:<minute>' '1:30' または '-1:30'
HOUR TO SECOND '<hour>:<minute>:<second>' または '<sign> <hour>:<minute>:<second>' '1:29:59' または '-1:29:59.333'
MINUTE '<minute>' または '<sign> <minute>' '90' または '-90'
MINUTE TO SECOND '<minute>:<second>' または '<sign> <minute>:<second>' '89:59' または '-89:59'
SECOND '<second>' または '<sign> <second>' '15' または '-15.7'

インターバルに年と月の両方の値を指定する場合は、2 つの値の間にハイフンを使用します。 この場合、月の値は [0, 11] の範囲内でなければなりません。 インターバルに月の値を指定して、年の値を指定しない場合は、月の値に制約はありません。

日を残りのインターバルから分離するには、スペースを使用します。

インターバルを HOUR、MINUTE、および SECOND の中から複数を用いて指定する場合は、コロンを使用して値を区切る必要があり、左端を除くすべてが、以下のように制限されます。

HOUR
0 から 23
MINUTE
0 から 59
SECOND
0 から 59.999...

次に、有効なインターバル値の例をいくつか示します。

次に、無効なインターバル値の例をいくつか示します。

インターバル・リテラルのいくつかの例を次に示します。

INTERVAL '1' HOUR
INTERVAL '90' MINUTE
INTERVAL '1-06' YEAR TO MONTH

関連概念
メッセージ・フロー
ESQL データ・タイプ

関連タスク
メッセージ・フロー・アプリケーションの開発
日時値での数値演算子の使用
時間間隔の計算

関連資料
ESQL DATE データ・タイプ
ESQL TIME データ・タイプ
ESQL GMTTIME データ・タイプ
ESQL TIMESTAMP データ・タイプ
ESQL GMTTIMESTAMP データ・タイプ