TIMESTAMP

TIMESTAMP 関数は、1 つ以上の引数から導き出される タイム・スタンプを戻します。

構文図を読む構文図をスキップする
>>-TIMESTAMP--(--expression-1--+---------------------------+--)-><
                               '-,--+-expression-2-------+-'      
                                    '-precision-constant-'        

expression-1 および expression-2

これらの引数に関する規則は、 2 番目の引数が指定されるかどうかと、2 番目の引数のデータ・タイプによって異なります。

  • expression-1 のみを指定した場合:
    引数は、日付、タイム・スタンプ、文字ストリング、またはグラフィック・ストリングのいずれかの組み込みデータ・タイプの値を戻す式であることが必要です。 expression-1 が文字ストリングまたは グラフィック・ストリングの場合、値は以下のいずれかでなければなりません。
    • 日付またはタイム・スタンプの有効なストリング表現。日付とタイム・スタンプのストリング表現の有効な形式に ついては、日付/時刻の値のストリング表記を参照してください。
    • GENERATE_UNIQUE 関数からの結果と見なされる実際の長さが 13 の文字ストリング。GENERATE_UNIQUE については、GENERATE_UNIQUE を参照してください。
  • 引数を両方とも指定した場合:
    • 2 番目の引数が expression-2 の場合:

      最初の引数は、日付、文字ストリング、またはグラフィック・ストリングのいずれかの組み込みデータ・タイプの値を戻す式であることが必要です。expression-1 が文字ストリングまたはグラフィック・ストリング の場合、その値は、日付の有効なストリング表現でなければなりません。

      expression-2 は、時刻、文字ストリング、またはグラフィック・ストリング のうちのいずれかの組み込みデータ・タイプの値を戻す式でなければなりません。expression-2 が文字ストリングまたはグラフィック・ストリング の場合、その値は、時刻の有効なストリング表現でなければなりません。日付と時刻のストリング表現の有効な形式については、日付/時刻の値のストリング表記を参照してください。

    • 2 番目の引数が precision-constant の場合:
      最初の 引数は、日付、タイム・スタンプ、文字ストリング、またはグラフィック・ストリングのいずれかの 組み込みデータ・タイプの値を戻す式でなければ なりません。expression-1 が文字ストリングまたは グラフィック・ストリングの場合、値は以下のいずれかでなければなりません。
      • 日付またはタイム・スタンプの有効なストリング表現。 日付とタイム・スタンプのストリング表現の有効な形式に ついては、日付/時刻の値のストリング表記を参照してください。
      • GENERATE_UNIQUE 関数からの結果と見なされる実際の長さが 13 の文字ストリング。GENERATE_UNIQUE については、GENERATE_UNIQUE を参照してください。
precision-constant
小数秒の桁数を表す整数定数。 値の範囲は 0 から 12 です。

この関数の結果は、タイム・スタンプになります。引数のどちらかが NULL になる可能性がある場合は、結果も NULL になる可能性が あります。引数のどちらかが NULL である場合は、結果は NULL 値になります。

その他の規則も、2 番目の引数を指定するかどうかに応じて以下のように異なります。

  • 引数を両方とも指定し、2 番目の 引数が expression-2 の場合:

    結果は、最初の引数によって日付が指定され、 2 番目の引数によって時刻が指定された TIMESTAMP(6) です。タイム・スタンプの秒未満の部分はゼロです。

  • 引数を両方とも指定し、2 番目の引数が precision-constant の場合:

    結果は、 2 番目の引数で指定された精度のタイム・スタンプです。

  • 引数が 1 つだけ指定され、それが TIMESTAMP(p) の場合

    結果は、指定した TIMESTAMP(p) になります。

  • 引数が 1 つだけ指定され、それが DATE の場合

    結果は、その日付で、TIMESTAMP(0) にキャストされた真夜中の想定時刻となります。

  • 引数が 1 つだけ指定され、それがストリングの場合

    結果は、そのストリングで表される TIMESTAMP(6) です。引数が長さ 14 のストリングの場合、タイム・スタンプの端数秒の部分はゼロになります。

注記

代替構文: 引数を 1 つだけ指定する場合、アプリケーションの移植性を拡張するには、CAST 指定を使用します。 詳しくは、CAST の指定を参照してください。

  • 日付と時刻の値が以下のとおりであるとします。
      SELECT TIMESTAMP( DATE('1988-12-25'), TIME('17.12.30') )
        FROM SYSIBM.SYSDUMMY1
    値として、「1988-12-25-17.12.30.000000」が戻されます。
  • 7 桁の秒未満タイム・スタンプ・ストリングを、TIMESTAMP(9) の値に変換します。
    TIMESTAMP('2007-09-24-15.53.37.2162474', 9)
    この例では 「2007-09-24-15.53.37.216247400」の値を戻します。