Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.
TIMESTAMP を操作するか、2 つの TIMESTAMP 値の間の秒数を返します。次の「備考」の項を参照してください。
SECONDS( timestamp-expression )
SECONDS( timestamp-expression, timestamp-expression )
SECONDS( time-or-timestamp-expression, integer-expression )
timestamp-expression TIMESTAMP 値。
time-or-timestamp-expression TIME または TIMESTAMP データ型の値。
integer-expression time-or-timestamp-expression に加算される秒数。integer-expression が負の場合、time-or-timestamp-expression から適切な秒数が引かれます。整数式を指定する場合は、time-or-timestamp-expression を TIME、DATE または TIMESTAMP データ型として明示的にキャストしてください。time-or-timestamp-expression が DATE データ型の場合、時刻部分には真夜中が使用されます。
構文 1 では UNSIGNED BIGINT。
構文 2 では SIGNED BIGINT。
構文 3 では TIME または TIMESTAMP。
SECONDS 関数の結果は、その引数によって異なります。
構文 1 1 つの timestamp-expression を SECONDS 関数に渡すと、0000-02-29 の真夜中から timestamp-expression までの秒数を UNSIGNED BIGINT として返します。
0000-02 は実際の日付を指すための値ではありません。SECONDS 関数で使用されるデフォルトの日付です。
構文 2 2 つの TIMESTAMP 値を SECONDS 関数に渡すと、その間の秒数を整数の SIGNED BIGINT 値で返します。
構文 3 TIMESTAMP 値と INTEGER 値を SECONDS 関数に渡すと、整数の秒数を time-or-timestamp-expression に加算した TIMESTAMP 結果を返します。同様に、TIME 値を SECONDS 関数に渡すと、TIME データ型の値を返します。
構文 2 の代わりに、DATEDIFF 関数を使用します。構文 3 の代わりに、DATEADD 関数を使用します。
次の文は、値 14400 を返します。これは、2 番目の TIMESTAMP 値が、最初のタイムスタンプの 14400 秒後であることを示します。
SELECT SECONDS( '1999-07-13 06:07:12', '1999-07-13 10:07:12' ); SELECT DATEDIFF( second, '1999-07-13 06:07:12', '1999-07-13 10:07:12' );
次の文は、値 63062431632 を返します。
SELECT SECONDS( '1998-07-13 06:07:12' );
次の文は、TIMESTAMP 値 1999-05-12 21:05:12.000 を返します。
SELECT SECONDS( CAST( '1999-05-12 21:05:07' AS TIMESTAMP ), 5); SELECT DATEADD( second, 5, '1999-05-12 21:05:07' );