sql >> Database teknologi >  >> RDS >> Oracle

oracle konvertere unix epoke tid til dato

For at konvertere fra millisekunder fra epoke (antag epoke er 1. januar 1970):

select to_date('19700101', 'YYYYMMDD') + ( 1 / 24 / 60 / 60 / 1000) * 1322629200000
from dual;

30/11/2011 5:00:00 AM

Sådan konverteres denne dato tilbage til millisekunder:

select (to_date('11/30/2011 05:00:00', 'MM/DD/YYYY HH24:MI:SS') - to_date('19700101', 'YYYYMMDD')) * 24 * 60 * 60 * 1000
from dual;

1322629200000

Hvis det er sekunder i stedet for millisekunder, skal du bare udelade 1000-delen af ​​ligningen:

select to_date('19700101', 'YYYYMMDD') + ( 1 / 24 / 60 / 60 ) * 1322629200
from dual;

select (to_date('11/30/2011 05:00:00', 'MM/DD/YYYY HH24:MI:SS') - to_date('19700101', 'YYYYMMDD')) * 24 * 60 * 60
from dual;

Håber det hjælper.



  1. Sådan kontrollerer du størrelsen af ​​alle tabeller i en database i MySQL

  2. Dato- og tidsenheder i MySQL (fuld liste)

  3. Kan ikke løse indsamlingskonflikt

  4. Tilmeld dig Q&A Forum for udviklere