WebSphere Message Broker バージョン 8.0.0.5 オペレーティング・システム: AIX、HP-Itanium、Linux、Solaris、Windows、z/OS

製品の最新バージョンについては、IBM Integration Bus バージョン 9.0 をご覧ください。

日時値での数値演算子の使用

以下の例は、数値演算子を使用して日時値を操作するためにコード化できる ESQL を示しています。

日時値にインターバルを加算する
最も簡単に行える操作は、日時値に対するインターバルの加算または減算です。 例えば、次のような式を書くことができます。
DATE '2000-03-29' + INTERVAL '1' MONTH
TIMESTAMP '1999-12-31 23:59:59' + INTERVAL '1' SECOND

以下の例は、退職年齢を生年月日に加算して、退職日付を算出する方法を示しています。

DECLARE retAge CHARACTER '65';
DECLARE birthDate DATE DATE '1953-06-01';

SET OutputRoot.XML.Test.retirementDate = birthDate + CAST(retAge AS INTERVAL YEAR);

上記の例で DATE という語は意図的に繰り返されています。 最初に出現する DATE は、宣言された変数 birthDate のデータ型を指定します。 2 番目の出現は、その同じ変数を単一引用符で囲まれた固定文字ストリングによって DATE として初期化します。

2 つのインターバルの加算または減算
加算または減算を使用して、2 つのインターバル値を結合することができます。 この 2 つのインターバル値は、互換タイプのものでなければなりません。 以下の例に示されているような、日-秒のインターバルへの年-月のインターバルの加算は無効です。
INTERVAL '1-06' YEAR TO MONTH + INTERVAL '20' DAY

結果として得られるインターバルのインターバル修飾子は、2 つのオペランドのインターバルにあるすべてのフィールドを包含することができます。 以下に例を示します。

INTERVAL '2 01' DAY TO HOUR + INTERVAL '123:59' MINUTE TO SECOND

この例では、日と秒の両方のフィールドが、少なくとも 1 つのオペランド値にあるため、ここでの結果のインターバルの修飾子は DAY TO SECOND になります。

2 つの日時値の減算
2 つの日時値を減算して、インターバルを戻すことができます。 戻される結果の精度を指示するには、インターバル修飾子を式の中に入れておく必要があります。 以下に例を示します。
(CURRENT_DATE - DATE '1776-07-04') DAY

この例では、1776 年 7 月 4 日以来の日数が戻されます。 一方、次の例を見てみます。

(CURRENT_TIME - TIME '00:00:00') MINUTE TO SECOND

この例では経過日数を分と秒で戻します。

インターバルのスケーリング
次のようにして、インターバル値を整数係数で乗算または除算することができます。
INTERVAL '2:30' MINUTE TO SECOND / 4
特記事項 | 商標 | ダウンロード | ライブラリー | サポート | フィードバック

Copyright IBM Corporation 1999, 2014Copyright IBM Corporation 1999, 2014.

        
        最終更新:
        
        最終更新: 2015-02-28 17:45:33


タスク・トピックタスク・トピック | バージョン 8.0.0.5 | ac16750_