Als u het aantal seconden wilt berekenen dat is verstreken sinds een bepaalde datum en tijd, kunt u de UNIXEPOCH()
gebruiken functie.
Merk op dat deze functie is geïntroduceerd in SQLite 3.38.0, dus het werkt alleen als je SQLite 3.38.0 of hoger gebruikt.
Voorbeeld
Hier is een voorbeeld om te demonstreren:
SELECT UNIXEPOCH() - UNIXEPOCH('2020-02-23 07:30:45');
Resultaat:
64254554
In dit voorbeeld heb ik het aantal seconden geretourneerd sinds 2020-02-23 07:30:45.
Het is duidelijk dat het aantal seconden anders zal zijn als we het later opnieuw uitvoeren:
SELECT UNIXEPOCH() - UNIXEPOCH('2020-02-23 07:30:45');
Resultaat:
64254823
Aantal seconden sinds het begin van de maand
Hier is een voorbeeld dat het aantal seconden retourneert dat is verstreken sinds het begin van de huidige maand:
SELECT UNIXEPOCH() - UNIXEPOCH(DATETIME('now', 'start of month'));
Resultaat:
605380
Hier gebruiken we de DATETIME()
functie samen met de now
argument om de huidige datum en tijd te retourneren. En we gebruiken ook de start of month
modifier om het begin van de maand te specificeren.
Het volgende voorbeeld is een uitbreiding van het vorige. Het toont de werkelijke datums, evenals de seconden ertussen:
SELECT
DATETIME('now', 'start of month') AS "Start of Month",
DATETIME('now') AS "Now",
UNIXEPOCH() - UNIXEPOCH(DATETIME('now', 'start of month')) AS "Seconds";
Resultaat:
Start of Month Now Seconds ------------------- ------------------- ------- 2022-03-01 00:00:00 2022-03-08 00:12:04 605524
U kunt ook start of day
. gebruiken en start of year
om de seconden sinds het begin van de dag of het jaar terug te geven.