PostgreSQL TO_DATE 函数简介
TO_DATE()
函数将字符串文字转换为日期值。下面说明了
TO_DATE()
函数的语法:
TO_DATE()
函数接受两个字符串参数。第一个参数是要转换为日期的字符串。第二个是输入格式。
TO_DATE()
函数返回一个日期值。
请参见以下示例:
SELECT TO_DATE('20170103','YYYYMMDD');
输出显示:
TO_DATE
------------
2017-01-03
在此示例中,字符串
20170103
根据输入格式
YYYYMMDD
转换为日期。
YYYY
:4 位数格式的年份
MM
:2 位数字格式的月份
DD
:2 位数字格式的日期
结果,该函数返回
January 3rd 2017
。
下表说明了用于格式化日期值的模板模式:
PostgreSQL TO_DATE 示例
以下语句将字符串
10 Feb 2017
转换为日期值:
SELECT TO_DATE('10 Feb 2017', 'DD Mon YYYY');
TO_DATE
------------
2017-02-10
(1 row)
假设您要将字符串2017 Feb 10
转换为日期值,可以应用模式YYYY Mon DD
,如下:
SELECT TO_DATE('2017 Feb 20','YYYY Mon DD');
该函数返回以下输出:
TO_DATE
------------
2017-02-20
(1 row)
PostgreSQL TO_DATE 陷阱
如果传递无效的日期字符串,TO_DATE()
函数将尝试将其转换为有效的日期,如果不能,则发出错误。例如:
SELECT TO_DATE('2017/02/30', 'YYYY/MM/DD');
PostgreSQL 发出以下错误:
ERROR: date/time field value out of range: "2017/02/30"
LINE 1: SELECT '2017/02/30'::date;
在本教程中,您学习了如何使用 PostgreSQL 的TO_DATE()
函数,将字符串文字转换为日期值。
PostgreSQL 教程:日期函数
PostgreSQL 文档:数据类型格式化函数
to_timestamp(), to_char(), to_number()