TO_DATE 函数 - Amazon Redshift

TO_DATE 函数

TO_DATE 会将以字符串形式表示的日期转换为 DATE 数据类型。

注意

TO_DATE 不支持带有 Q(季度编号)的格式字符串。

语法

TO_DATE(string, format)
TO_DATE(string, format, is_strict)

参数

string

要转换的字符串。

format

一个字符串文本,用于定义其日期部分中的输入字符串格式。有关有效日期、月份和年份格式的列表,请参阅日期时间格式字符串

is_strict

一个可选的布尔值,它指定在输入日期值超出范围时是否返回错误。当 is_strict 被设置为 TRUE 时,如果存在超出范围的值,则返回错误。当 is_strict 被设置为 FALSE(默认值)时,则接受溢出值。

返回类型

TO_DATE 将根据 format 值返回 DATE。

如果转换为格式 失败,则返回错误。

示例

以下 SQL 语句将日期 02 Oct 2001 转换为日期数据类型。

select to_date('02 Oct 2001', 'DD Mon YYYY'); to_date ------------ 2001-10-02 (1 row)

以下 SQL 语句将字符串 20010631 转换为日期。

select to_date('20010631', 'YYYYMMDD', FALSE);

结果是 2001 年 7 月 1 日,因为六月份只有 30 天。

to_date ------------ 2001-07-01

以下 SQL 语句将字符串 20010631 转换为日期:

to_date('20010631', 'YYYYMMDD', TRUE);

结果产生错误,因为 6 月只有 30 天。

ERROR: date/time field date value out of range: 2001-6-31