若Oracle數據庫時間字段設置為“NUMBER”類型,查詢時間列時會以數值的形式展現,像“1241450728000”樣式,不具備可讀性;同時若以“2009/5/4 15:25:28”樣式update時間,則會提示“ORA-01722:invalid number”,無法更新。
這時,就需要我們對此進行格式轉化,示例如下:
--date轉long示例 select sysdate,(sysdate- to_date('1970-01-01','yyyy-mm-dd'))* 24*60*60*1000 as 整型格式 from dual; --long轉date select to_date('1970-01-0100:00:00','yyyy-mm-dd hh24:mi:ss') + 1241450728000/1000/24/60/60 from dual;