sql >> Database >  >> RDS >> PostgreSQL

Retourneer de Unix-tijdstempel in PostgreSQL

In PostgreSQL kunnen we de extract() . gebruiken functie samen met de epoch argument om de Unix-tijdstempel te retourneren.

We kunnen de Unix-tijdstempel retourneren op basis van de huidige datum/tijd, of we kunnen deze ophalen op basis van een andere gespecificeerde datum/tijd.

De Unix-tijdstempel (ook bekend als Unix Epoch-tijd, Unix-tijd of POSIX-tijd) is het aantal seconden dat is verstreken sinds 00:00:00 donderdag 1 januari 1970 Coordinated Universal Time (UTC).

De huidige Unix-tijdstempel ophalen

Hier is een voorbeeld van het ophalen van de Unix-tijdstempel van de huidige datum en tijd:

SELECT extract(epoch from now());

Resultaat:

1650152298.430101

Datumwaarden

Hier is een voorbeeld van het ophalen van de Unix-tijdstempel van een opgegeven date waarde:

SELECT extract(epoch from date '2030-08-15');

Resultaat:

1912982400

Bij gebruik met date waarden, epoch geeft het nominale aantal seconden terug sinds 01-01-1900 00:00:00, zonder rekening te houden met tijdzone- of zomertijdregels.

Tijdstempelwaarden

Hier is een voorbeeld van het ophalen van de Unix-tijdstempel van een opgegeven timestamp waarde:

SELECT extract(epoch from timestamp '2030-08-15 03:30:45');

Resultaat:

1912995045

Bij gebruik met timestamp waarden, epoch geeft het nominale aantal seconden terug sinds 1970-01-01 00:00:00, zonder rekening te houden met tijdzone- of zomertijdregels. Dit is hetzelfde als bij het gebruik van date waarden.

Tijdstempel met tijdzonewaarde

Hier is een voorbeeld van het ophalen van de Unix-tijdstempel van een opgegeven timestamp with time zone waarde:

SELECT extract(
    epoch from timestamp with time zone '2030-08-15 03:30:45.12-08'
    );

Resultaat:

1913023845.12

Bij gebruik met timestamp with time zone waarden, epoch geeft het aantal seconden terug sinds 1970-01-01 00:00:00 UTC (negatief voor tijdstempels daarvoor)

Intervallen

We kunnen ook een Unix-tijdstempel krijgen van een interval waarde:

SELECT extract(epoch from interval '7 days 2 hours');

Resultaat:

612000

Bij gebruik met interval waarden, epoch geeft het totale aantal seconden in het interval terug.


  1. Gegevens selecteren in een Postgres-array

  2. Werken met Java-gegevens in Alteryx

  3. SQL Server 2016:OLTP-verbeteringen in het geheugen

  4. SQL om een ​​lijst met getallen van 1 tot 100 te genereren