sql >> Database teknologi >  >> RDS >> SQLite

2 måder at returnere Unix-tidsstemplet i SQLite

Unix-tidsstemplet er antallet af sekunder siden 1970-01-01 00:00:00 UTC. SQLite giver os et par måder at få unix-tidsstemplet på.

STRFTIME() Funktion

STRFTIME() funktion returnerer en dato- og tidsværdi i det angivne format. Vi kan bruge %s-formatstrengsubstitutionen til at returnere antallet af sekunder siden 1970-01-01 00:00:00 UTC (dvs. unix-tidsstemplet):

SELECT STRFTIME('%s');

Resultat:

1646695406

UNIXEPOCH() Funktion

UNIXEPOCH() funktionen er specifikt designet til at returnere et unix tidsstempel. Denne funktion blev introduceret i SQLite 3.38.0 (frigivet 2. februar 2022), så den virker kun, hvis du bruger SQLite 3.38.0 eller nyere:

SELECT UNIXEPOCH();

Resultat:

1646695411

Vi kan se, at resultaterne ligner hinanden, men der er naturligvis en forskel på grund af den tid, det tog mig at køre hvert eksempel.

Kombineret

Bare for at være sikker, her er de igen. Bortset fra, denne gang kører jeg dem begge inden for den samme SELECT erklæring:

SELECT 
    UNIXEPOCH(),
    STRFTIME('%s');

Resultat:

UNIXEPOCH()  STRFTIME('%s')
-----------  --------------
1646695558   1646695558    


  1. Postgresql generere_serie af måneder

  2. Oracle DB Server + APEX + ORDS + JasperRapporter fra bunden (del 1)

  3. Lej eller bliv ansat:En datamodel for rekrutteringsprocessen

  4. Ikke flere data at læse fra socket-fejl