Nedan finns en lista över giltiga tidssträngsformat som du kan använda i valfri datum- och tidsfunktion i SQLite.
Tidssträng | Exempel |
---|---|
ÅÅÅÅ-MM-DD | 2020-12-30 |
ÅÅÅÅ-MM-DD HH:MM | 2020-12-30 10:45 |
ÅÅÅÅ-MM-DD HH:MM:SS | 2020-12-30 10:45:07 |
ÅÅÅÅ-MM-DD HH:MM:SS.SSS | 2020-12-30 10:45:07.123 |
ÅÅÅÅ-MM-DD T TT:MM | 2020-12-30T10:45 |
ÅÅÅÅ-MM-DD T TT:MM:SS | 2020-12-30T10:45:07 |
ÅÅÅÅ-MM-DD T TT:MM:SS.SSS | 2020-12-30T10:45:07.123 |
TT:MM | 10:45 |
TT:MM:SS | 10:45:07 |
TT:MM:SS.SSS | 10:45:07.123 |
nu | 2020-12-30 10:45:07 |
DDDDDDDDDD | 2459213.94799769 |
now
tidssträng returnerar aktuellt datum och tid med hjälp av UTC (Universal Coordinated Time).
DDDDDDDDDD
tidssträng är det julianska dagtalet uttryckt som ett flyttal.
Hur fungerar tidssträngarna?
När du använder någon av SQLites datum- och tidsfunktioner måste du ange en tidssträng. Den här tidssträngen representerar datumet/tiden som du försöker formatera eller utföra operationen på.
Tidssträngen du anger måste följa ett av de giltiga formaten i tabellen ovan.
Exempelkod
Här är ett grundläggande exempel för att visa några av tidssträngarna i tabellen ovan.
.mode line
SELECT
datetime('2020-12-30'),
datetime('now'),
datetime('2459213.94799769');
Resultat:
datetime('2020-12-30') = 2020-12-30 00:00:00 datetime('now') = 2020-04-24 22:58:31 datetime('2459213.94799769') = 2020-12-30 10:45:07
Tidszonsindikator
Alla tidssträngar som inkluderar tiden (som TT:MM, TT:MM:SS, etc) kan också inkludera en tidszonsindikator. Detta betyder alla tidssträngar från rad 2 till rad 10 i tabellen ovan.
Tidszonsindikatorn kan ha formen [+-]HH:MM
eller bara Z
.
Z
suffixet ändrar ingenting, eftersom SQLites datum- och tidsfunktioner redan använder UTC/zulu-tid internt ändå.
Alla HH:MM
som inte är noll suffixet subtraheras från det angivna datumet och tiden för att beräkna zulutid.
Exempel på tidszonsindikatorer
Här är några exempel att visa.
SELECT
datetime('10:45Z'),
datetime('10:45+01:00'),
datetime('10:45-01:00');
Resultat:
datetime('10:45Z') = 2000-01-01 10:45:00 datetime('10:45+01:00') = 2000-01-01 09:45:00 datetime('10:45-01:00') = 2000-01-01 11:45:00