MICROSECOND スカラー関数

MICROSECOND 関数は、値のマイクロ秒の部分を戻します。

Read syntax diagramSkip visual syntax diagramMICROSECOND(expression )

スキーマは SYSIBM です。

expression
以下のいずれかの組み込みデータ・タイプの値を戻す式。すなわち、DATE、TIMESTAMP、タイム・スタンプ期間、または日付かタイム・スタンプの有効な文字ストリング表記 (CLOB 以外)。 指定された引数が DATE である場合、時刻が午前 0 時ちょうど (00.00.00) であると想定して、最初に TIMESTAMP(0) 値に変換されます。 Unicode データベースでは、指定した引数が GRAPHIC または VARGRAPHIC のデータ・タイプであると、まず文字ストリングに変換されてから、関数が実行されます。

この関数の結果は長精度整数 (large integer) です。 引数が NULL になる可能性がある場合、結果も NULL になる可能性があります。 引数が NULL であれば、結果は NULL 値です。

その他の規則は、引数のデータ・タイプに応じて以下のように異なります。
  • 引数が DATE、TIMESTAMP、あるいは日付またはタイム・スタンプの有効なストリング表記の場合、
    • 整数の範囲は 0 から 999 999 となります。
    • タイム・スタンプの精度が 6 を超える場合、値は切り捨てられます。
  • 引数が期間の場合
    • 結果には、-999 999 から 999 999 の間の整数値としてのマイクロ秒部分が反映されます。 ゼロ以外の結果の符号は、引数と同じになります。

表 TABLEA に、タイプが TIMESTAMP の TS1 および TS2 という 2 つの列が入っているものとします。 TS1 のマイクロ秒部分がゼロではなく、 TS1 と TS2 の秒部分が同じである行すべてを選択します。
   SELECT * FROM TABLEA
     WHERE MICROSECOND(TS1) <> 0
       AND
     SECOND(TS1) = SECOND(TS2)