MICROSECOND スカラー関数
MICROSECOND 関数は、値のマイクロ秒の部分を戻します。
スキーマは 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)