De MySQL SYSDATE()
functie retourneert de huidige datum en tijd. De waarde wordt geretourneerd in 'JJJJ-MM-DD UU:MM:SS' of JJJJMMDDHHMMSS formaat, afhankelijk van of de functie in een tekenreeks of in een numerieke context wordt gebruikt.
Deze functie is vergelijkbaar met NOW()
maar met een subtiel verschil. SYSDATE()
geeft de tijd terug waarop het wordt uitgevoerd. NOW()
geeft de tijd terug waarop de instructie werd uitgevoerd.
Syntaxis
De syntaxis gaat als volgt:
SYSDATE([fsp])
Waar de (optionele) fsp
argument specificeert de fractionele seconden precisie voor de geretourneerde waarde.
Voorbeeld
Hier is een voorbeeld om te demonstreren.
SELECT SYSDATE();
Resultaat:
+---------------------+ | SYSDATE() | +---------------------+ | 2018-06-23 11:36:52 | +---------------------+
Nauwkeurigheid in fracties van seconden
Hier is een voorbeeld van het gebruik van de fsp
argument om de precisie van een fractie van een seconde voor de geretourneerde waarde op te geven.
SELECT SYSDATE(6);
Resultaat:
+----------------------------+ | SYSDATE(6) | +----------------------------+ | 2018-06-23 11:37:05.515928 | +----------------------------+
Numerieke context
Hier is een voorbeeld van het gebruik van de SYSDATE()
functie in een numerieke context.
SELECT SYSDATE() + 0;
Resultaat:
+----------------+ | SYSDATE() + 0 | +----------------+ | 20180623113717 | +----------------+
U kunt ook een waarde gebruiken die niet nul is om op te tellen of af te trekken van de geretourneerde waarde.
SYSDATE() vs NU()
Zoals vermeld, SYSDATE()
en NOW()
doe bijna hetzelfde, maar met een klein verschil. SYSDATE()
geeft de tijd terug waarop het wordt uitgevoerd. De NOW()
functie, aan de andere kant, retourneert een constante tijd die de tijd aangeeft waarop de instructie begon uit te voeren.
Zie voor een voorbeeld SYSDATE()
vs NOW()
in MySQL:wat is het verschil?