日期类型的格式控制符

符号

说明

转换是否可逆

示例

"" ""(空格)、""-""(减号)、

""\""、""/"" 、"":""、

"",""、"".""、"";""

分隔符

-

""text""

文本类型

文本类型,作为输出参数时,输出引号中包含的内容;作为输入参数时,跳过引号中的内容,忽略空格。

select to_char(sysdate, '""Hello world!""') from dual;

AM、PM

上午和下午指示符

select to_char(systimestamp, 'HH12:MI:SS AM') from dual;

CC

世纪

select to_char(systimestamp, 'CC') from dual;

DAY

星期天全称

select to_char(systimestamp, 'DAY') from dual;

DY

星期天简称

select to_char(systimestamp, 'DY') from dual;

DDD

一年中的第几天

select to_char(to_date('2018-01-07', 'YYYY-MM-DD'), 'DDD') from dual;

DD

当前月中的第几天

select to_char(to_date('2018-01-07', 'YYYY-MM-DD'), 'DD') from dual;

D

当前周中的第几天

select to_char(to_date('2018-01-07', 'YYYY-MM-DD'), 'D') from dual;

FF3、

FF6、

FF(默认FF6)

秒的小数部分

select to_char(systimestamp, 'FF3') from dual;

HH12、

HH24 、

HH(默认HH12)

12小时制/24小时制

select to_char(systimestamp, 'HH,HH12,HH24') from dual;

MI

时间的分钟数(0 ~ 59)

-

MM

日期的月份(1 ~ 12)

-

MONTH

日期中月份全称

select to_char(systimestamp, 'MONTH, MON') from dual;

MON

日期中月份简称

-

Q

当前日期的季度(1 ~ 4)

-

SSSSS

一天中已经逝去的秒数(0 ~ 86400 - 1)

-

SS

时间中的秒数(0 ~ 59)

-

WW

当前日期为该年份的week数,即当年的第几周,第一周从当年第一天计算起,每周7天

-

W

当前日期为该月份的week数,即当月的第几周,第一周从当月第一天计算起,每周7天

-

YYYY

四位年份

-

YYY

三位年份,如2018年可以写作018

-

YY

两位年份,如2018年可以写作18

-

Y

一位年份,如2018年可以写作8

select to_char(systimestamp, 'Y') from dual;

日期类型

默认输出格式

DATETIME

YYYY-MM-DD HH24:MI:SS

TIMESTAMP

YYYY-MM-DD HH24:MI:SS.FF

TIMESTAMP WITH TIME ZONE

YYYY-MM-DD HH24:MI:SS.FF TZH:TZM

TIMESTAMP WITH LOCAL TIME ZONE

YYYY-MM-DD HH24:MI:SS.FF

示例

通过格式控制符的描述,可以用to_char函数指定时期类型的输出格式,如下示例:

SELECT to_char(sysdate, 'MON-YY-DD') FROM dual;

TO_CHAR(SYSDATE, 'MON-YY-DD')

-----------------------------

JAN-18-07

1 rows fetched.

SELECT to_char(sysdate, 'MON-YY-DD HH:MI:SS AM') FROM dual;

TO_CHAR(SYSDATE, 'MON-YY-DD HH

-------------------------------

JAN-18-07 05:01:15 AM

1 rows fetched.

日期类型默认输出格式参见以下示例:

SELECT sysdate, systimestamp FROM dual;

SYSDATE                SYSTIMESTAMP

---------------------------------------------------

2018-01-07 17:18:18    2018-01-07 17:18:18.230000

1 rows fetched.

使用格式控制符将一个字符串转化为日期类型:

SELECT to_date('07-JAN-2018', 'DD-MON-YYYY') FROM dual;

TO_DATE('07-JAN-2018', 'DD-MON-YYYY')

-------------------------------------

2018-01-07 00:00:00

1 rows fetched.

Logo

腾讯云面向开发者汇聚海量精品云计算使用和开发经验,营造开放的云计算技术生态圈。

更多推荐