SYSDATE に相当する PostgreSQL
Shihab Sikder
2023年6月20日
この記事では、Oracle の SYSDATE
に相当する PostgreSQL について説明します。
PostgreSQL システム時刻
PostgreSQL には、システム時刻を返す関数のリストがあります。 一部の関数は、タイムスタンプ、精度などで時間を返します。
システムの日付と時刻を提供する関数のリストを次に示します。
関数 | 説明 |
---|---|
CURRENT_DATE |
YYYY-MM-DD 形式の日付のみを返します |
CURRENT_TIME |
システム時刻を HH:MM:SS.SSS 形式で返します |
CURRENT_TIMESTAMP |
日付と時刻を組み合わせて返します |
CURRENT_TIME (精度) |
精度が定義された CURRENT_TIME と同じ |
CURRENT_TIMESTAMP (精度) |
精度が定義された CURRENT_TIMESTAMP と同じ |
LOCALTIME |
タイムゾーンなしで時間のみを返します |
LOCALTIMESTAMP |
タイムゾーンなしで日付と時刻を返します |
LOCALTIME (精度) |
精度が定義された LOCALTIME と同じ |
LOCALTIMESTAMP (精度) |
精度が定義された LOCALTIME と同じ |
clock_timestamp() |
システムクロックから日付と時刻を返します |
timeofday() |
日時を返す |
now() |
日時を返す |
これらの各コマンドは次のようになります。
CURRENT_DATE
postgres=# select CURRENT_DATE;
current_date
--------------
2022-04-21
(1 row)
CURRENT_TIME
postgres=# select CURRENT_TIME;
current_time
--------------------
10:00:11.047684+06
(1 row)
CURRENT_TIMESTAMP
postgres=# select CURRENT_TIMESTAMP;
current_timestamp
------------------------------
2022-04-21 10:01:01.67809+06
(1 row)
CURRENT_TIME
(精度)
postgres=# select CURRENT_TIME(3);
current_time
-----------------
10:01:29.618+06
(1 row)
CURRENT_TIMESTAMP
(精度)
postgres=# select CURRENT_TIMESTAMP(3);
current_timestamp
----------------------------
2022-04-21 10:02:18.001+06
(1 row)
LOCALTIME
postgres=# SELECT LOCALTIME;
localtime
-----------------
10:02:34.459566
(1 row)
LOCALTIMESTAMP
postgres=# SELECT LOCALTIMESTAMP;
localtimestamp
----------------------------
2022-04-21 10:03:04.678772
(1 row)
clock_timestamp()
postgres=# SELECT clock_timestamp();
clock_timestamp
------------------------------
2022-04-21 10:06:30.42038+06
(1 row)
timeofday()
postgres=# SELECT timeofday();
timeofday
-------------------------------------
Thu Apr 21 10:07:13.660494 2022 +06
(1 row)
今()
postgres=# SELECT now();
now
-------------------------------
2022-04-21 10:07:50.340605+06
(1 row)
DATETIME
および日時のその他の機能の詳細については、公式ドキュメント を参照してください。
著者: Shihab Sikder