unix_date_to_oracle
create or replace function unix_date_to_oracle(in_number NUMBER) return date is
begin
return(TO_DATE('19700101','yyyymmdd') + in_number/86400 +TO_NUMBER(SUBSTR(TZ_OFFSET(sessiontimezone),1,3))/24);
end unix_date_to_oracle;
验证:
SQL> select to_char(unix_date_to_oracle(1726207200),'yyyy-mm-dd hh24:mi:ss') as second_to_date from dual;
SECOND_TO_DATE
-------------------
2024-09-13 14:00:00
SQL>