更新时间:2020-03-26 16:46
TO_CHAR
函数将 DATE
、TIMESTAMP
、TIMESTAMP WITH TIME ZONE
、TIMESTAMP WITH LOCAL TIME ZONE
、INTERVAL DAY TO SECOND
和 INTERVAL YEAR TO MONTH
等数据类型的值按照参数 fmt
指定的格式转换为 VARCHAR2
数据类型的值。 如果不指定参数 fmt
,则参数 datetime
的值将按如下格式转换为 VARCHAR2
数据类型:
DATE
、TIMESTAMP
、TIMESTAMP WITH TIME ZONE
和 TIMESTAMP WITH LOCAL TIME ZONE
的值被转换为数据库中日期时间值的默认格式。您可在数据类型章节中查看各日期时间类型的默认格式。INTERVAL DAY TO SECOND
和 INTERVAL YEAR TO MONTH
数据类型的值转换为数字格式的间隔值。
TO_CHAR( datetime [, fmt [, 'nlsparam' ] ])
参数 | 说明 |
---|---|
datetime | DATE 、TIMESTAMP 、TIMESTAMP WITH TIME ZONE 、TIMESTAMP WITH LOCAL TIME ZONE 、INTERVAL DAY TO SECOND 和 INTERVAL YEAR TO MONTH 等数据类型的值。 |
fmt | 输出格式参数,详细格式信息请参见 日期时间格式化元素表。 |
nlsparam | 用来控制返回的月份和日份所使用的语言。 |
VARCHAR2
数据类型。
示例 1: 以下语句通过 TO_CHAR
函数返回系统当前日期,并且将日期时间值转换为了 DS DL 格式:
SELECT TO_CHAR(SYSDATE,'DS DL') FROM DUAL;
查询结果如下:
+-----------------------------------+
| TO_CHAR(SYSDATE,'DSDL') |
+-----------------------------------+
| 03/08/2020 Sunday, March 08, 2020 |
+-----------------------------------+
示例 2:以下语句将间隔值转化为指定格式,并且设置了返回语言为 AMERICAN:
SELECT TO_CHAR(interval'1' year, 'YY-DD', 'nls_language = AMERICAN') FROM DUAL;
查询结果如下:
+----------------------------------------------------------+
| TO_CHAR(INTERVAL'1'YEAR,'YY-DD','NLS_LANGUAGE=AMERICAN') |
+----------------------------------------------------------+
| +01-00 |
+----------------------------------------------------------+
在文档使用中是否遇到以下问题
更多建议
匿名提交