我有一个字符串 08012016111512
,其中前两个字符 08
是日期,接下来的两个字符 01
是月份,接下来的四个字符 2016
是年份,接下来的两个字符 11
是小时,接下来的两个字符 15
是分钟,最后两个字符 12
是秒。建议我如何将上面的字符串转换为日期时间。
最佳答案
您需要使用TO_DATE函数将字符串文字显式转换为DATE。
to_date('08012016111512', 'DDMMYYYYHH24MISS')
例如,
SQL> alter session set nls_date_format='DD-MM-YYYY HH24:MI:SS';
Session altered.
SQL> SELECT to_date('08012016111512', 'DDMMYYYYHH24MISS') my_date FROM dual;
MY_DATE
-------------------
08-01-2016 11:15:12
注意:alter session 语句仅以所需格式显示日期。
关于sql - oracle中如何将数字转换为日期时间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34735755/