

本文属于机器翻译版本。若本译文内容与英语原文存在差异，则一律以英文原文为准。

# 日期和时间函数
<a name="sql-reference-date-time-functions"></a>

以下内置函数与日期和时间相关。

**Topics**
+ [时区](#sql-reference-date-time-functions-time-zones)
+ [日期时间转换函数](sql-reference-datetime-conversion-functions.md)
+ [日期、时间戳和间隔运算符](sql-reference-date-timestamp-interval.md)
+ [日期和时间模式](sql-reference-parse-timestamp-format.md)
+ [CURRENT\$1DATE](sql-reference-current-date.md)
+ [CURRENT\$1ROW\$1TIMESTAMP](sql-reference-current-row-timestamp.md)
+ [CURRENT\$1TIME](sql-reference-current-time.md)
+ [CURRENT\$1TIMESTAMP](sql-reference-current-timestamp.md)
+ [EXTRACT](sql-reference-extract.md)
+ [LOCALTIME](sql-reference-localtime.md)
+ [LOCALTIMESTAMP](sql-reference-local-timestamp.md)
+ [TSDIFF](sql-reference-tsdiff.md)

 其中，SQL 扩展 CURRENT\$1ROW\$1TIMESTAMP 对流上下文最有用，因为向您提供有关流数据出现时间的相关信息，而不仅仅是查询的运行时间。这是流式查询和传统 RDMS 查询之间的关键区别：流式查询保持“打开”状态，生成更多数据，因此查询运行时间的时间戳无法提供有效信息。

LOCALTIMESTAMP、LOCALTIME、CURRENT\$1DATE 和 CURRENT\$1TIMESTAMP 生成的结果都会设置为查询首次执行时的值。只有 CURRENT\$1ROW\$1TIMESTAMP 生成一行，每行都有唯一的时间戳（日期和时间）。

以 LOCALTIMESTAMP（或 CURRENT\$1TIMESTAMP 或 CURRENT\$1TIME）作为其中一列运行的查询在查询首次运行时放入所有输出行中。如果该列改为包含 CURRENT\$1ROW\$1TIMESTAMP，则每个输出行都会获得一个新计算的 TIME 值，表示该行的输出时间。

要从日期时间值返回组成某个组成部分（例如，月份中的某天），请使用 [EXTRACT](sql-reference-extract.md)

## 时区
<a name="sql-reference-date-time-functions-time-zones"></a>

Amazon Kinesis Data Analytics 采用 UTC。因此，所有时间函数都以 UTC 返回时间。