Oracle 日期時間格式化不準的問題, hh24:mi:ss 纔是正確的寫法

在設計數據庫的時候,有些字段會默認取數據庫的時間 sysdate,對 sysdate格式化的時候,記錄下 Oracle 中的坑,

to_char(sysdate, 'yyyyMMdd hh24:mm:ss') ---錯誤的方式

to_char(sysdate, 'yyyyMMdd hh24:mi:ss') ---正確的方式

這種習慣的寫法 to_char(sysdate, 'yyyyMMdd hh24:mm:ss') 中的 m ,有點傻,oracle分不清是月份 m, 還是分鐘 m,所以分鐘中的m 他取的月份,造成比較詭異的時間。。。

正常的寫法是把分鐘用 mi 表示(min分鐘的簡寫),

所以 to_char(sysdate, 'yyyyMMdd hh24:mi:ss') 是正確的方式。

測試使用 select  to_char(sysdate, 'yyyyMMdd hh24:mi:ss') from dual 之後,時間顯示正常。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章