これらの関数と演算子は、日付および時刻データ型で操作します。
演算子 | 例 | 結果 |
---|---|---|
+ | date '2012-08-08' + interval '2' day | 2012-08-10 |
+ | time '01:00' + interval '3' hour | 04:00:00.000 |
+ | timestamp '2012-08-08 01:00' + interval '29' hour | 2012-08-09 06:00:00.000 |
+ | timestamp '2012-10-31 01:00' + interval '1' month | 2012-11-30 01:00:00.000 |
+ | interval '2' day + interval '3' hour | 2 03:00:00.000 |
+ | interval '3' year + interval '5' month | 3-5 |
- | date '2012-08-08' - interval '2' day | 2012-08-06 |
- | time '01:00' - interval '3' hour | 22:00:00.000 |
- | timestamp '2012-08-08 01:00' - interval '29' hour | 2012-08-06 20:00:00.000 |
- | timestamp '2012-10-31 01:00' - interval '1' month | 2012-09-30 01:00:00.000 |
- | interval '2' day - interval '3' hour | 1 21:00:00.000 |
- | interval '3' year - interval '5' month | 2-7 |
AT TIME ZONE
演算子はタイムゾーンを設定します。
SELECT timestamp '2012-10-31 01:00 UTC';
-- 2012-10-31 01:00:00.000 UTC
SELECT timestamp '2012-10-31 01:00 UTC' AT TIME ZONE 'America/Los_Angeles';
-- 2012-10-30 18:00:00.000 America/Los_Angeles
current_date
クエリの開始時点の現在の日付を返します。
current_time
クエリの開始時点の現在の時刻(タイムゾーン付き)を返します。
current_timestamp
クエリの開始時点の現在のタイムスタンプ(タイムゾーン付き)を、3桁のサブセカンド精度で返します。
current_timestamp(p)
クエリの開始時点の現在のタイムスタンプ(タイムゾーン付き)を、p桁のサブセカンド精度で返します。
SELECT current_timestamp(6);
-- 2020-06-24 08:25:31.759993 America/Los_Angeles