Die SQL-Funktion NOW() gibt das aktuelle Datum und Uhrzeit als Zeichenkette YYYY-MM-DD hh:mm:ss oder numerisch als BIGINTYYYYMMDDhhmmss oder als DECIMALYYYYMMDDhhmmss.microseconds zurück, je nachdem, ob die Funktion im String- oder numerischen Kontext verwendet wird.
Der Wert wird im Format der aktuellen Sitzungszeitzone ausgedrückt.
Das Argument "Genauigkeit" kann angegeben werden, um eine Sekundenbruchteilgenauigkeit von 0 bis 6 anzuzeigen.
Die Angabe der "Genauigkeit" muss eine geschriebene Zahl von 0-6 sein. Ausdrücke oder Variablen erzeugen einen Syntax-Fehler, größere Werte einen Prezisions-Fehler.
Das Setzen der System-Variablen timestamp wirkt sich auf die Funktion NOW() aus im Gegesatz zur SYSDATE()-Funktion.
errno: 1426 sqlstate: 42000 error: Too big precision 7 specified for 'current_timestamp'. Maximum is 6
selectnow(3 + 2)
errno: 1064 sqlstate: 42000 error: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '+ 2)' at line 1
selectnow(@a)
errno: 1064 sqlstate: 42000 error: You have an error in your SQL syntax; check the manual that corresponds to your MariaDB server version for the right syntax to use near '@a)' at line 1
Beispiele, wie sich das Setzen der System-Variablen timestamp auswirk
Die Beispiele wurden mit dem MyWAY SQL-Manager erstellt: Download
Verwendung der NOW() Funktion in MySQL und MariaDB-Datenbanken
In MySQL und MariaDB wird die Funktion NOW() verwendet, um das aktuelle Datum und die aktuelle Uhrzeit abzurufen. Die Funktion gibt den aktuellen Zeitstempel im Format "JJJJ-MM-TT HH:MM:SS" zurück. NOW() kann verwendet werden, um das aktuelle Datum und die aktuelle Uhrzeit in SQL-Abfragen abzurufen, als Standardwert für Zeitstempelspalten in Tabellen, in Zeitzonen-Berücksichtigung oder bei verschiedenen Berechnungen oder Manipulationen mit Zeitstempeln mithilfe von Funktionen, mit denen Zeitintervalle zum aktuellen Zeitstempel-Wert addiert oder davon subtrahiert werden.