sql >> Databasteknik >  >> RDS >> Oracle

Hur man returnerar Unix-tidsstämpeln i Oracle

Här är ett alternativ för att returnera Unix-tidsstämpeln när du använder Oracle Database.

Unix-tidsstämpeln (även känd som Unix Epoch-tid, Unix-tid eller POSIX-tid) är antalet sekunder som har förflutit sedan 00:00:00 torsdagen den 1 januari 1970, Coordinated Universal Time (UTC).

Hämta den aktuella Unix-tidsstämpeln

Här är ett exempel på hur du får Unix-tidsstämpeln från det aktuella datumet och tiden:

SELECT (CAST (systimestamp at time zone 'UTC' as date) - date '1970-01-01') * 86400
FROM DUAL;

Exempelresultat:

1650253093.999999999999999999999999999998

Konvertera en specificerad tidsstämpel till Unix-tidsstämpel

Här är ett exempel där inmatningstidsstämpeln är ett hårdkodat värde:

SELECT (
    CAST(timestamp '2030-08-15 18:30:45' at time zone 'UTC' as date) - date '1970-01-01'
    ) * 86400
FROM DUAL;

Resultat:

1913074244.999999999999999999999999999997

  1. Gruppera data med OVER- och PARTITION BY-funktionerna

  2. Index för att hitta ett element i en JSON-array

  3. Hur hanterar man bäst historiska uppslagsvärden i en databas?

  4. Använder JShell i Java 9 i NetBeans 9.0, del 3