sql >> Database >  >> RDS >> SQLite

Haal de datum/tijd uit een Unix-tijdstempel in SQLite

Als je een Unix-tijdstempel hebt, kun je DATETIME() van SQLite gebruiken functie met de unixepoch modifier om de werkelijke datum en tijd te berekenen.

U kunt ook de DATE() . gebruiken functie als u alleen de datum wilt retourneren. En het is ook mogelijk om de TIME() functie om alleen het tijdsgedeelte terug te geven.

De datum en tijd ophalen

Hier is een voorbeeld van het gebruik van de DATETIME() functie met de unixepoch modificatie:

SELECT DATETIME(1793956207, 'unixepoch');

Resultaat:

2026-11-06 09:10:07

Krijg de datum

We kunnen de DATE() . gebruiken functie als we alleen de datum nodig hebben om te worden geretourneerd:

SELECT DATE(1793956207, 'unixepoch');

Resultaat:

2026-11-06

Krijg de tijd

De TIME() . gebruiken functie retourneert alleen het tijdsgedeelte:

SELECT TIME(1793956207, 'unixepoch');

Resultaat:

09:10:07

Compenseer voor uw lokale tijdzone

Je kunt ook de localtime . toevoegen modifier om de uitvoer aan te passen aan uw lokale tijdzone:

SELECT DATETIME(1793956207, 'unixepoch', 'localtime');

Resultaat:

2026-11-06 19:10:07

De localtime modifier gaat ervan uit dat de gespecificeerde tijdwaarde in Universal Coordinated Time (UTC) is en past die tijdwaarde aan zodat deze in localtime is .

De auto Aanpasser

Vanaf SQLite 3.38.0 kunnen we de auto . gebruiken modifier in plaats van de unixepoch modificatie:

SELECT DATETIME(1793956207, 'auto');

Resultaat:

2026-11-06 09:10:07

De auto-modifier zorgt ervoor dat de waarde wordt geïnterpreteerd als een Juliaans dagnummer of een Unix-tijdstempel, afhankelijk van de werkelijke waarde.

Als de waarde tussen 0.0 ligt en 5373484.499999 , dan wordt het geïnterpreteerd als een Juliaans dagnummer (overeenkomend met datums tussen -4713-11-24 12:00:00 en 9999-12-31 23:59:59 , inclusief). Voor numerieke waarden buiten het bereik van geldige Juliaanse dagnummers, maar binnen het bereik van -210866760000 naar 253402300799 , de auto modifier zorgt ervoor dat de waarde wordt geïnterpreteerd als een Unix-tijdstempel. Andere numerieke waarden vallen buiten het bereik en veroorzaken een NULL-retour.


  1. Converteer 'datetimeoffset' naar 'date' in SQL Server (T-SQL-voorbeelden)

  2. Snelste methode om MySQL Backup and Restore te gebruiken

  3. Ga postgresql LIKE-query

  4. Hoe te ontsnappen aan enkele aanhalingstekens in MySQL