Oracle number型日期轉date型日期

2021-09-05 09:20:32 字數 721 閱讀 6456

oracle 資料表中的日期可以用「number」型別字段儲存,字段值資料如下,意為2023年1月1號0點0分距現在的毫秒值。

1543400044000

1543400044000

1543400044000

1543400044000

......

解決辦法是寫乙個轉換函式:

--加上to_number(substr(tz_offset(sessiontimezone),1,3))/24的用意為加上當地時區的時間差。

--咱們東八區to_number(substr(tz_offset(sessiontimezone),1,3))的值為8,除以24得到天。

create or replace function num_to_date(in_number number) return date is

begin

return(to_date('19700101', 'yyyymmdd') + in_number / 86400000 +

to_number(substr(tz_offset(sessiontimezone), 1, 3)) / 24);

end num_to_date;

然後使用函式就可以了。

select num_to_date(t.coltime) from 表名 t;

Oracle Number型的深入理解

number資料型別 number precision,scale a precision表示數字中的有效位 如果沒有指定precision的話,oracle將使用38作為精度。b 如果scale大於零,表示數字精確到小數點右邊的位數 scale預設設定為0 如果scale小於零,oracle將把該...

ORACLE NUMBER丟失精度

oracle的number可以支援到38位精度。超過15位存進去,就用科學記數法表示的,而且精度丟失了。例 1234567890123456 插入後 1.23456789012346e15 123456789025587.22 插入後 123456789025587.00 補足 此處的精度丟失是,s...

Oracle NUMBER型別研究

oracle提供了強大的資料型別number,他的格式為oracle number datatype 語法 number precision scale 其中簡稱 precision p scale s number p,s 範圍 1 p 38,84 s 127 儲存資料範圍 1.0e 130 nu...