Oracle to_char的一些功能记录。
1、转成年月日时分秒的操作;
2、转成微妙的操作
SQL> select to_char(systimestamp, 'yyyy-mm-dd-hh24:mi:ss.ff') from dual;
TO_CHAR(SYSTIMESTAMP,'YYYY-MM-
------------------------------
2013-09-26-16:08:04.234000
注意,没有转成毫秒的参数格式。
如果需要转成毫秒,这样操作
SQL> select to_char(systimestamp, 'yyyy-mm-dd-hh24:mi:ss.ff3') from dual;
TO_CHAR(SYSTIMESTAMP,'YYYY-MM-
------------------------------
2013-09-26-16:12:10.640
3、转成零点到当前时间的秒数
SQL> select to_char(systimestamp, 'yyyymmddhh24miss -- SSSSS') from dual;
TO_CHAR(SYSTIMESTAMP,'YYYYMMDD
------------------------------
20130926160938 -- 58178
SQL> select to_char(systimestamp, 'yyyy-mm-dd-hh24:mi:ss'),
2 to_char(systimestamp, 'yyyymmddhh24miss -- SSSSS'),3 to_char(systimestamp, 'hh24') * 60 * 60 +
4 to_char(systimestamp, 'mi') * 60 + to_char(systimestamp, 'ss') +
5 to_number(to_char(systimestamp, 'ff') / 1000000.00)
6 from dual
7 /
TO_CHAR(SYSTIMESTAMP,'YYYY-MM- TO_CHAR(SYSTIMESTAMP,'YYYYMMDD TO_CHAR(SYSTIMESTAMP,'HH24')*6
------------------------------ ------------------------------ ------------------------------
2013-09-26-16:00:13 20130926160013 -- 57613 57613
其他参数如下表所示:
Parameter | Explanation |
---|