日期和时间函数 - Amazon Redshift

如果我们为英文版本指南提供翻译,那么如果存在任何冲突,将以英文版本指南为准。在提供翻译时使用机器翻译。

日期和时间函数

在本部分中,您可以找到 Amazon Redshift 支持的日期和时间标量函数的相关信息。

日期和时间函数摘要

Function 语法: 。 返回值:
||(串联)运算符

将日期与+符号两侧的时间相连接,然后返回一个TIMESTAMP或TIMESTAMPTZ。

日期 + 时间 TIMESTAMPTIMESTAMPZ
添加_月份

将指定的月数添加到日期或时间戳。

ADD_月份({日期|时间戳}, 整数) TIMESTAMP
时区

指定与TIMESTAMP或TIMESTAMPTZ表达一起使用的时区。

时区时区 TIMESTAMPTIMESTAMPZ
CONVERT_TIMEZONE会议

将时间戳从一个时区转换为另一个时区。

CONVERT_TIMEZONE(['时区“,”时区“, 时间戳) TIMESTAMP
CURRENT_DATE

返回当前会话时区(UTC默认)中当前事务开始的日期。

CURRENT_DATE DATE
日期_CMP

比较两个日期和退货 0 如果日期相同, 1 如果 日期1 更大,并且 -1 如果 日期2 大于。

日期_CMP(日期1, 日期2) INTEGER
日期_CMP_时间

将日期与时间进行比较并返回 0 如果数值相同, 1 如果 日期 更大, -1 如果 时间戳 大于。

日期_CMP_TIMESTAMP(日期, 时间戳) INTEGER
日期_CMP_TIMESTAMPTZ

将日期和时间戳与时区进行比较并返回 0 如果数值相同, 1 如果 日期 更大, -1 如果 时间戳tz 大于。

日期_CMP_TIMESTAMPTZ(日期, 时间戳tz) INTEGER
日期_年份

从日期中提取年份。

日期_年份(日期) INTEGER
DATEADD

将日期或时间增加指定间隔。

日期ADADD(日期部分, 间隔,{日期|时间|时间tz|时间戳}) TIMESTAMPTIMETIMETZ
DATEDIFF

返回给定日期部分的两个日期或时间之间的差异,例如日期或月份。

日期(日期部分,{日期|时间|时间tz|时间戳}, {日期|时间|时间tz|时间戳}) BIGINT
日期_部分

从日期或时间中提取日期部分值。

日期_部分(日期部分,{日期|时间戳}) DOUBLE
日期_TRUNC

根据日期部分截断时间戳。

日期_TRUNC(“日期部分”, 时间戳) TIMESTAMP
EXTRACT

从时间戳、时间、时间单位或字面上提取日期部分。

提取物(日期部分{TIMESTAMP'’| 时间戳 | 时间 | 时间tz}) INTEGER or DOUBLE
GETDATE

返回当前会话时区(UTC默认)中的当前日期和时间。括号为必填。

GETDATE TIMESTAMP
间隔_CMP

比较两个间隔和返回 0 如果间隔相等, 1 如果 间隔1 更大,并且 -1 如果 间隔2 大于。

INTERVAL_CMP(间隔1, 间隔2) INTEGER
LAST_DAY

返回包含 日期.

LAST_DAY(日期) DATE
月份_介于

返回两个日期之间的月份数。

月份_间隔(日期, 日期) FLOAT8
NEXT_DAY

返回 晚于 日期.

NEXT_DAY(日期, ) DATE
SYSDATE

返回当前事务开始的日期和时间(以UTC为单位)。

SYSDATE TIMESTAMP
时间

返回当前会话时区(UTC默认)中的当前工作日、日期和时间作为串值。

时间() VARCHAR
时间点_CMP

比较两个时间戳和返回值 0 如果时间戳相等, 1 如果 间隔1 更大,并且 -1 如果 间隔2 大于。

时间点(时间戳1, 时间戳2) INTEGER
时间点_CMP_日期

将时间戳与日期进行比较并返回 0 如果数值相同, 1 如果 时间戳 更大,并且 -1 如果 日期 大于。

时间点_CMP_日期(时间戳, 日期) INTEGER
时间点_CMP_TIMESTAMPTZ

将时间戳与时间戳与时区进行比较并返回 0 如果值相等, 1 如果 时间戳 更大,并且 -1 如果 时间戳tz 大于。

TIMESTAMP_CMP_TIMESTAMPTZ(时间戳, 时间戳tz) INTEGER
TIMESTAMPTZ_CMP

将两个时间戳与时区值进行比较并返回 0 如果值相等, 1 如果 时间戳tz1 更大,并且 -1 如果 时间戳tz2 大于。

TIMESTAMPTZ_CMP(时间戳tz1, 时间戳tz2) INTEGER
TIMESTAMPTZ_CMP_日期

将时间戳的值与时区和日期进行比较,然后返回 0 如果值相等, 1 如果 时间戳tz 更大,并且 -1 如果 日期 大于。

TIMESTAMPTZ_CMP_日期(时间戳tz, 日期) INTEGER
TIMESTAMPTZ_CMP_TIMESTAMP

将时间戳与时区与时间戳和返回值进行比较 0 如果值相等, 1 如果 时间戳tz 更大,并且 -1 如果 时间戳 大于。

TIMESTAMPTZ_CMP_TIMESTAMP(时间戳tz, 时间戳) INTEGER
时区

返回指定时区的时间戳和时间戳值。

时区(“时区{ 时间戳 | 时间戳tz ) TIMESTAMPTIMESTAMPTZ
TO_TIMESTAMP

返回指定时间戳和时区格式的带时区的时间戳。

时间点('时间戳“,”格式“) TIMESTAMPTZ
TRUNC

截断时间戳并返回日期。

TRUNC(时间戳) DATE
注意

在经时计算中不考虑跳秒。

事务中的日期和时间函数

当您在交易区块(BEGIN...END)内执行以下功能时,该函数将返回当前交易的开始日期或时间,而不是当前交易的开始。

  • SYSDATE

  • TIMESTAMP

  • CURRENT_DATE

以下函数总是返回当前报表的开始日期或时间,即使它们在交易冻结中。

  • GETDATE

  • 时间

弃用的仅领导节点函数

以下日期函数已废弃,因为它们仅在领导者节点上执行。有关更多信息,请参阅 仅领导节点函数。)