Documentation
/ SQL
/ Functions
Interval Functions
本节介绍用于检查和操作INTERVAL
值的函数和运算符。
下表显示了可用于INTERVAL
类型的数学运算符。
Operator |
Description |
Example |
Result |
+ |
添加一个INTERVAL |
INTERVAL 1 HOUR + INTERVAL 5 HOUR |
INTERVAL 6 HOUR |
+ |
对DATE 进行加法操作 |
DATE '1992-03-22' + INTERVAL 5 DAY |
1992-03-27 |
+ |
添加到 TIMESTAMP |
TIMESTAMP '1992-03-22 01:02:03' + INTERVAL 5 DAY |
1992-03-27 01:02:03 |
+ |
添加到TIME |
TIME '01:02:03' + INTERVAL 5 HOUR |
06:02:03 |
- |
减去一个INTERVAL |
INTERVAL 5 HOUR - INTERVAL 1 HOUR |
INTERVAL 4 HOUR |
- |
从DATE 中减去 |
DATE '1992-03-27' - INTERVAL 5 DAY |
1992-03-22 |
- |
从 TIMESTAMP 中减去 |
TIMESTAMP '1992-03-27 01:02:03' - INTERVAL 5 DAY |
1992-03-22 01:02:03 |
- |
从TIME 中减去 |
TIME '06:02:03' - INTERVAL 5 HOUR |
01:02:03 |
下表显示了可用于INTERVAL
类型的标量函数。
仅为间隔定义了文档化的日期部分组件。
描述 |
提取 日期部分组件(等同于 extract )。有关此提取的有时令人惊讶的规则,请参见 INTERVAL 。 |
示例 |
date_part('year', INTERVAL '14 months') |
Result |
1 |
描述 |
date_part 的别名。 |
示例 |
datepart('year', INTERVAL '14 months') |
Result |
1 |
描述 |
date_part 的别名。 |
示例 |
extract('month' FROM INTERVAL '14 months') |
Result |
2 |
描述 |
获取间隔中的总秒数,作为双精度浮点数。 |
示例 |
epoch(INTERVAL 5 HOUR) |
结果 |
18000.0 |
描述 |
构建一个世纪间隔。 |
示例 |
to_centuries(5) |
结果 |
INTERVAL 500 YEAR |
描述 |
构造一个日期间隔。 |
示例 |
to_days(5) |
结果 |
INTERVAL 5 DAY |
描述 |
构建一个十年的间隔。 |
示例 |
to_decades(5) |
结果 |
INTERVAL 50 YEAR |
描述 |
构建一个小时间隔。 |
示例 |
to_hours(5) |
结果 |
INTERVAL 5 HOUR |
描述 |
构造一个微秒间隔。 |
示例 |
to_microseconds(5) |
结果 |
INTERVAL 5 MICROSECOND |
描述 |
构建一个千禧年间隔。 |
示例 |
to_millennia(5) |
结果 |
INTERVAL 5000 YEAR |
描述 |
构造一个毫秒间隔。 |
示例 |
to_milliseconds(5) |
结果 |
INTERVAL 5 MILLISECOND |
描述 |
构建一个分钟间隔。 |
示例 |
to_minutes(5) |
结果 |
INTERVAL 5 MINUTE |
描述 |
构建一个月份间隔。 |
示例 |
to_months(5) |
结果 |
INTERVAL 5 MONTH |
描述 |
构建第二个区间。 |
示例 |
to_seconds(5) |
结果 |
INTERVAL 5 SECOND |
描述 |
构造一个周间隔。 |
示例 |
to_weeks(5) |
结果 |
INTERVAL 35 DAY |
描述 |
构造一个年份间隔。 |
示例 |
to_years(5) |
结果 |
INTERVAL 5 YEAR |