sql >> Base de Datos >  >> RDS >> Oracle

Convertir Unixtime a Datetime SQL (Oracle)

No hay funciones integradas. Pero es relativamente fácil escribir uno. Dado que una marca de tiempo de Unix es el número de segundos desde el 1 de enero de 1970

CREATE OR REPLACE FUNCTION unix_ts_to_date( p_unix_ts IN NUMBER )
  RETURN DATE
IS
  l_date DATE;
BEGIN
  l_date := date '1970-01-01' + p_unix_ts/60/60/24;
  RETURN l_date;
END;

que puedes ver que se llama

SQL> select unix_ts_to_date( 1336822620 ) from dual;

UNIX_TS_TO_DATE(133
-------------------
2012-05-12 11:37:00