PostgreSQL 教程

查询

连接

高级部分

程序连接接口

PostgreSQL 配置

PostgreSQL 可视化工具

PostgreSQL 笔记

original icon
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.knowledgedict.com/tutorial/postgresql-date-time.html

PostgreSQL日期和时间函数


所有重要的日期和时间相关函数如下列表所示:

函数 描述
AGE() 减去参数
CURRENT DATE/TIME() 它指定当前日期和时间。
DATE_PART() 获取子字段(相当于提取)
EXTRACT() 获得子字段
ISFINITE() 测试有限的日期,时间和间隔(非+/-无穷大)
JUSTIFY 调整间隔

AGE(timestamp,timestamp)&AGE(timestamp):

函数 描述
age(timestamp, timestamp) 当使用第二个参数的时间戳形式调用时,age()减去参数,产生使用年数和月份的类型为“interval”的“符号”结果。
age(timestamp) 当仅使用时间戳作为参数调用时,age()current_date(午夜)减去。

AGE()函数例子

按Ctrl + E打开查询编辑器,执行此查询示例:

SELECT AGE(timestamp '2017-01-26', timestamp '1951-08-15');

执行上面语句得到以下结果 -

函数AGE(timestamp)的示例

它用于生产当前年龄。

执行上面语句得到以下结果 -

SELECT AGE(timestamp '1990-08-15');

执行上面语句得到以下结果 -

当前DATE/TIME()

以下是返回与当前日期和时间相关的值的函数的列表。

函数 描述
CURRENT_DATE 提供当前日期
CURRENT_TIME 提供带时区的值
CURRENT_TIMESTAMP 提供带时区的值
CURRENT_TIME(precision) 可以选择使用precision参数,这将使结果在四分之一秒的范围内四舍五入到数位数。
CURRENT_TIMESTAMP(precision) 可以选择使用精度参数,这将使结果在四分之一秒的范围内四舍五入到数位数。
LOCALTIME 提供没有时区的值。
LOCALTIMESTAMP 提供没有时区的值。
LOCALTIME(precision) 可以选择使用精度参数,这将使结果在四分之一秒的范围内四舍五入到数位数。
LOCALTIMESTAMP(precision) 可以选择使用精度参数,这将使结果在四分之一秒的范围内四舍五入到数位数。

现在,您可以来看看以下命令:

获取当前时间:

SELECT CURRENT_TIME;

获取当前日期:

SELECT CURRENT_DATE;

获取当前时间戳(两者的日期和时间)

SELECT CURRENT_TIMESTAMP;

当前时间戳更精确:

SELECT CURRENT_TIMESTAMP(2);

本地时间戳:

SELECT LOCALTIMESTAMP;