PostgreSQL中查看当前时间和日期的几种常用方法


    目录
  • PostgreSQL中查看当前时间和日期
    • CURRENT_TIMESTAMP
    • NOW()
    • CURRENT_DATE
    • CURRENT_TIME
    • LOCALTIME 和 LOCALTIMESTAMP
    • 查询组合
  • 总结

    PostgreSQL中查看当前时间和日期
    CURRENT_TIMESTAMP
    CURRENT_TIMESTAMP 返回当前的日期和时间,包含时间戳信息,包括时区信息。
    
SELECT CURRENT_TIMESTAMP;

    输出:
    
white=# SELECT CURRENT_TIMESTAMP;
      current_timestamp       
------------------------------
 2024-09-29 07:04:55.93786-07
(1 row)

    NOW()
    NOW() 函数与 CURRENT_TIMESTAMP 基本相同,返回当前的日期和时间,包含时间戳信息。
    
SELECT NOW();

    输出:
    
white=# SELECT NOW();
              now              
-------------------------------
 2024-09-29 07:05:12.771343-07
(1 row)

    CURRENT_DATE
    CURRENT_DATE 返回当前的日期,不包含时间信息。
    
SELECT CURRENT_DATE;

    输出:
    
white=# SELECT CURRENT_DATE;
 current_date 
--------------
 2024-09-29
(1 row)

    CURRENT_TIME
    CURRENT_TIME 返回当前的时间,不包含日期信息。
    
SELECT CURRENT_TIME;

    输出:
    
white=# SELECT CURRENT_TIME;
    current_time    
--------------------
 07:06:07.099157-07
(1 row)

    LOCALTIME 和 LOCALTIMESTAMP
  • LOCALTIME: 返回当前的时间,不含时区信息。
  • LOCALTIMESTAMP: 返回当前的日期和时间,不含时区信息。

    
SELECT LOCALTIME, LOCALTIMESTAMP;

    输出:
    
white=# SELECT LOCALTIME, LOCALTIMESTAMP;
    localtime    |       localtimestamp       
-----------------+----------------------------
 07:06:22.930981 | 2024-09-29 07:06:22.930981
(1 row)

    查询组合
    你可以将这些查询组合在一起,更全面地查看当前日期和时间信息:
    
SELECT 
    CURRENT_TIMESTAMP AS current_timestamp,
    NOW() AS now,
    CURRENT_DATE AS current_date,
    CURRENT_TIME AS current_time,
    LOCALTIME AS localtime,
    LOCALTIMESTAMP AS localtimestamp;

    输出:
    
white=# SELECT 
white-#     CURRENT_TIMESTAMP AS current_timestamp,
white-#     NOW() AS now,
white-#     CURRENT_DATE AS current_date,
white-#     CURRENT_TIME AS current_time,
white-#     LOCALTIME AS localtime,
white-#     LOCALTIMESTAMP AS localtimestamp;
       current_timestamp       |              now              | current_date |    current_time    |    localtime    |       localtimestamp       
-------------------------------+-------------------------------+--------------+--------------------+-----------------+----------------------------
 2024-09-29 07:06:52.609489-07 | 2024-09-29 07:06:52.609489-07 | 2024-09-29   | 07:06:52.609489-07 | 07:06:52.609489 | 2024-09-29 07:06:52.609489
(1 row)

    总结
    通过使用这些内置函数,你可以轻松获取 PostgreSQL 中当前的日期和时间信息。不同的函数返回不同粒度和格式的时间信息,如 CURRENT_TIMESTAMP 和 NOW() 返回完整的时间戳,包括时区信息,而 CURRENT_DATE 和 CURRENT_TIME 则分别只返回日期和时间部分。