oracle 时间函数 TO_DATE

https://docs.oracle.com/cd/B19306_01/server.102/b14200/functions183.htm

 

TO_DATE(char [, fmt [, 'nlsparam' ] ])

参数

TO_DATE()函数接受三个参数:

1) char

是一个字符串值,它被转换为一个DATE值。它可以是任何数据类型CHAR,VARCHAR2,NCHAR或NVARCHAR2的值。

2) fmt

是的日期和时间格式string

fmt 参数是可选。如果忽略则取决于默认日期格式

默认日期格式由NLS_TERRITORY初始化参数隐式确定,或者可以由NLS_DATE_FORMAT参数显式设置。

'nlsparam'函数在此函数中的TO_CHAR作用与日期转换函数中的作用相同。

fmt的理解请参考上一篇https://blog.csdn.net/uotail/article/details/83150030

3) 'nlsparam'

是一个表达式,用于指定日期和月份名称的语言string。该nls_language参数具有以下形式:

1

NLS_DATE_LANGUAGE = language

这个'nlsparam'参数是可选的。如果省略它,该TO_DATE()函数将使用会话的默认语言。

返回值

TO_DATE()函数返回一个DATE与输入字符串对应的值。

 

以下示例将字符串转换为日期:

SELECT TO_DATE('January 15, 1989, 11:00 A.M.','Month dd, YYYY, HH:MI A.M.','NLS_DATE_LANGUAGE = American') FROM DUAL;

如果NLS_TERRITORY参数设置为' AMERICA',则返回的值反映默认日期格式。不同的NLS_TERRITORY值会导致不同的默认日期格式:

ALTER SESSION SET NLS_TERRITORY = 'KOREAN';
SELECT TO_DATE( 'January 15, 1989, 11:00 A.M.','Month dd, YYYY, HH:MI A.M.','NLS_DATE_LANGUAGE = American') FROM DUAL;

例子

select to_date('2018-10-18 21:01:52','YYYY-MM-DD HH24:MI:SS') from dual

 SELECT TO_DATE( '5 Jan 2017', 'DD MON YYYY','NLS_DATE_LANGUAGE = American' ) FROM dual;

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值