函数名称 | 返回类型 | 函数说明 | 用法示例 | 示例结果 |
age(,)
| interval
| 用于计算两个时间戳之间的时间间隔。 | age(timestamp '2001-04-10', timestamp '1957-06-13')
| 43 years 9 mons 27 days
|
age()
| interval
| 用于计算当前时间与指定参数之间的时间间隔。 | age(timestamp '1957-06-13')
| 43 years 8 mons 3 day
|
clock_timestamp()
| timestamp with time zone
| 获取日期和时间(每次调用的最新时间)。 | clock_timestamp()
| 2024-07-01 20:00:00
|
current_date
| date
| 获取当前日期。 | current_date
| 2024-07-01 20:00:00
|
current_time
| time with time zone
| 获取当前时间。 | current_time
| 2024-07-01 20:00:00
|
current_timestamp
| timestamp with time zone
| 获取当前日期和时间(一个事务的生命周期内)。 | current_timestamp
| 2024-07-01 20:00:00
|
date_part(,)
| double precision
| 用于从文本中提取指定部分的时间戳。 | date_part('hour', timestamp '2001-02-16 20:38:40')
| 20
|
date_partt(,)
| double precision
| 用于从文本中提取指定部分的时间间隔。 | date_part('month', interval '2 years 3 months')
| 3
|
date_trunc(,)
| timestamp
| 用于将一个字符串截断到指定的精度。 | date_trunc('hour', timestamp '2001-02-16 20:38:40')
| 2001-02-16 20:00:00
|
date_trunc(,,)
| timestamp with time zone
| 用于在指定的时区截断到指定的精度。 | date_trunc('day', timestamptz '2001-02-16 20:38:40+00', 'Australia/Sydney')
| 2001-02-16 13:00:00+00
|
date_trunc(,)
| interval
| 用于将一个时间间隔截断到指定的时间单位。 | date_trunc('hour', interval '2 days 3 hours 40 minutes')
| 2 days 03:00:00
|
extract (timestamp )
| double precision
| 用于从时间戳中提取特定的字段(如小时)。 | extract(hour from timestamp '2001-02-16 20:38:40')
| 20
|
extract (interval )
| double precision
| 用于从时间间隔中提取特定的时间单位。 | extract(month from interval '2 years 3 months')
| 3
|
isfinite()
| boolean
| 检查一个日期是否是有限的。如果是有限的则返回true,否则返回false。 | isfinite(date '2001-02-16')
| true
|
isfinite()
| boolean
| 检查一个时间戳是否是有限的。如果是有限的则返回true,否则返回false。 | isfinite(timestamp '2001-02-16 21:28:30')
| true
|
isfinite()
| boolean
| 检查一个时间间隔是否是有限的。如果是有限的则返回true,否则返回false。 | isfinite(interval '4 hours')
| true
|
justify_days(
| interval
| 将以天为单位的时间间隔调整为以月为单位的时间间隔。 | justify_days(interval '35 days')
| 1 mon 5 days
|
justify_hours()
| interval
| 将以小时为单位的时间间隔调整为以天为单位的时间间隔。 | justify_hours(interval '27 hours')
| 1 day 03:00:00
|
justify_interval()
| interval
| 将时间间隔按照指定单位进行调整。 | justify_interval(interval '1 mon -1 hour')
| 29 days 23:00:00
|
localtime
| time
| 获取服务器的当前的本地日期和时间。 | localtime
| 2024-07-01 08:15:23
|
localtimestamp
| timestamp
| 获取服务器当前的本地日期和时间,包括到秒或毫秒级别的精度。 | localtimestamp
| 2024-07-01 08:15:23
|
make_date(,,)
| date
| 用于根据指定的年、月、日三个整数参数创建一个日期类型的值。 | make_date(2013, 7, 15)
| 2013-07-15
|
make_interval(DEFAULT 0,DEFAULT 0,DEFAULT 0,DEFAULT 0,DEFAULT 0,DEFAULT 0,DEFAULT 0.0)
| interval
| 用于根据指定的年、月、周、日、时、分、秒创建一个时间间隔值。 | make_interval(days => 10)
| 10 days
|
make_time(,,)
| time
| 用于根据指定的小时、分钟和秒(可含小数表示更细粒度的时间单位)创建一个时间类型的值。 | make_time(8, 15, 23.5)
| 08:15:23.5
|
make_timestamp(,,,,,)
| timestamp
| 用于根据指定的年、月、日、小时、分钟和秒(可含小数表示更细粒度的时间单位)创建一个日期时间类型的值。 | make_timestamp(2013, 7, 15, 8, 15, 23.5)
| 2013-07-15 08:15:23.5
|
make_timestamptz(,,,,,, [])
| timestamp with time zone
| 用于根据指定的年、月、日、小时、分钟、秒(可含小数表示更细粒度的时间单位)以及可选的时区信息创建一个带时区的时间戳类型的值。 | make_timestamptz(2013, 7, 15, 8, 15, 23.5)
| 2013-07-15 08:15:23.5+01
|
now()
| timestamp with time zone
| 返回当前事务开始时的时间戳。 | now()
| 2024-07-01 08:15:23.5+01
|
statement_timestamp()
| timestamp with time zone
| 返回当前查询或命令开始执行时的日期和时间。 | statement_timestamp()
| 2024-07-01 08:15:23.5+01
|
timeofday()
| text
| 返回当前的时间(通常是小时、分钟、秒)。 | timeofday()
| 2024-07-01 08:15:23.5+01
|
transaction_timestamp()
| timestamp with time zone
| 用于获取当前事务开始时的时间戳。 | transaction_timestamp()
| 2024-07-01 08:15:23.5+01
|
to_timestamp()
| timestamp with time zone
| 把Unix时间(从 1970-01-01 00:00:00+00 开始的秒)转换成日期时间格式。 | to_timestamp(1284352323)
| 2010-09-13 04:32:03+00
|