與date操作關系最大的就是兩個轉換函數:to_date(),to_char()
to_date() 作用:將字符類型按一定格式轉化為日期類型:
具體用法:
to_date(''2019-11-27'',''yyyy-mm-dd''),前者為字符串,后者為轉換日期格式,注意,前后兩者要以一對應。
如:to_date(''2019-11-27 13:34:43'', ''yyyy-mm-dd hh24:mi:ss'') 將得到具體的時間
oracle 日期格式
(1)to_date("要轉換的字符串","轉換的格式") 兩個參數的格式必須匹配,否則會報錯。
是將字符串轉化為日期(DATE)格式,而且轉化之后的格式與orcal系統日期參數有關
(2)to_char(日期,"轉換格式" ) 即把給定的日期按照“轉換格式”轉換。
另外,要注意Oracle-時間格式化-to_char()函數;yyyy-mm-dd hh24:mi:ss和yyyy-MM-dd HH:mm:ss的區別
知識點1:在使用Oracle的to_date函數來做日期轉換時,很多Java程序員也許會直接的采用“yyyy-MM-dd HH:mm:ss”的格式
作為格式進行轉換,但是在Oracle中會引起錯誤:“ORA 01810 格式代碼出現兩次”。
如:select to_date( '2020-01-01 13:14:20 ', 'yyyy-MM-dd HH24:mm:ss ') from dual;
原因是:SQL中不區分大小寫,MM和mm被認為是相同的格式代碼,所以Oracle的SQL采用了mi代替分鍾。
select to_date( '2020-01-01 13:14:20 ', 'yyyy-MM-dd HH24:mi:ss ') from dual;
知識點2:假設當前時間為:2019-11-25 16:20:32
select to_char(sysdate, 'yyyy-MM-dd HH24:mi:ss ') from dual; //mi是分鍾 2019-11-25 16:20:32
select to_char(sysdate, 'yyyy-MM-dd HH24:mm:ss ') from dual; //mm會顯示月份 2019-11-25 16:05:32
把字符串類型的時間 2018年12月4日 11:00:27 修改成 20181204
方法:to_date(a.書寫時間,'yyyy"年"mm"月"dd"日" hh24:mi:ss')

