📅  最后修改于: 2023-12-03 15:18:38.395000             🧑  作者: Mango
在 PostgreSQL 中,AGE 函数的作用是计算时间间隔。它接受两个日期时间参数,并返回一个间隔类型的值表示两个日期时间之间的时间间隔。
语法如下:
AGE(end, start)
其中,end 为结束时间,start 为开始时间。两个参数必须是 timestamp、time 或 date 类型的值。
AGE 函数返回的时间间隔类型值包括年(year)、月(month)、日(day)、小时(hour)、分钟(minute)和秒(second)等单位。
以下是示例代码:
SELECT AGE('2020-02-01 13:00:00', '2020-01-01 12:00:00') AS interval;
以上代码将返回一个间隔类型的值,表示从2020-01-01 12:00:00 到2020-02-01 13:00:00 经过的时间间隔。
可以使用 EXTRACT 函数将 AGE 函数返回的时间间隔值拆分为年、月、日等单个单位的值。例如:
SELECT EXTRACT(year FROM AGE('2020-02-01 13:00:00', '2020-01-01 12:00:00')) AS year_interval;
SELECT EXTRACT(month FROM AGE('2020-02-01 13:00:00', '2020-01-01 12:00:00')) AS month_interval;
SELECT EXTRACT(day FROM AGE('2020-02-01 13:00:00', '2020-01-01 12:00:00')) AS day_interval;
注意,在计算时间间隔时,要注意时区的影响。如果需要考虑时区,请使用 AT TIME ZONE 函数将日期时间值转换为特定时区的值,再进行计算。
以上就是 PostgreSQL 中 AGE 函数的介绍和示例代码。