Holen Sie sich das aktuelle Datum und die aktuelle Uhrzeit in MySQL

Mehvish Ashiq 15 Februar 2024
  1. Holen Sie sich das aktuelle Datum und die aktuelle Uhrzeit in MySQL
  2. die NOW()-Funktion
  3. die Funktion CURRENT_TIMESTAMP()
  4. die SYSDATE()-Funktion
Holen Sie sich das aktuelle Datum und die aktuelle Uhrzeit in MySQL

Heute lernen wir NOW(), CURRENT_TIMESTAMP() (auch als CURRENT_TIMESTAMP geschrieben) und SYSDATE(), um das aktuelle Datum und die aktuelle Uhrzeit in MySQL zu erhalten. Wir werden auch den Vergleich zwischen diesen drei Funktionen sehen.

Holen Sie sich das aktuelle Datum und die aktuelle Uhrzeit in MySQL

Wir haben drei Methoden, um das aktuelle Datum und die aktuelle Uhrzeit in MySQL zu erhalten. Zu diesen Methoden gehören NOW(), CURRENT_TIMESTAMP(), auch als CURRENT_TIMESTAMP geschrieben, SYSDATE(). Wir können sie einfach in der INSERT-Anweisung wie folgt verwenden.

Beispielcode:

# use NOW()
INSERT INTO student_attendance(ID, ATTENDANCE)
VALUES(1, NOW());

# use CURRENT_DATETIME
INSERT INTO student_attendance(ID, ATTENDANCE)
VALUES(1, CURRENT_DATETIME);

# use SYSDATE()
INSERT INTO student_attendance(ID, ATTENDANCE)
VALUES(1, SYSDATE());

Da wir mehrere Möglichkeiten haben, das aktuelle Datum und die Uhrzeit einzufügen, ist es wichtig, den Unterschied zwischen ihnen zu verstehen.

Es wird geklärt, wann und wo eine der genannten Methoden anzuwenden ist. Nachfolgend ein kurzer Vergleich von NOW(), CURRENT_TIMESTAMP() und SYSDATE().

die NOW()-Funktion

Das Datum und die Uhrzeit werden von der Methode NOW() zurückgegeben, je nachdem, welchen Kontext wir verwenden. Beispielsweise gibt die Methode NOW() Datum und Uhrzeit im String-Format als "YYYY-MM-DD HH-MM-SS" zurück, wenn der Kontext ein String ist.

Es wird in einem numerischen Format als YYYYMMDDHHMMSS zurückgegeben, wenn die Funktion einen numerischen Kontext verwendet. Es gibt die konstante Zeit zurück, die die Zeit anzeigt, zu der diese bestimmte Anweisung mit der Ausführung beginnt.

Es ist verfügbar und kann in MySQL-Version 4.0 und höher verwendet werden.

die Funktion CURRENT_TIMESTAMP()

Wir können CURRENT_TIMESTAMP() auch als CURRENT_TIMESTAMP schreiben. Es gibt das aktuelle Datum und die aktuelle Uhrzeit als "YYYY-MM-DD HH-MM-SS" oder YYYYMMDDHHMMSS zurück, wenn die Funktion den String-Kontext bzw. den numerischen Kontext verwendet.

Das Synonym von CURRENT_TIMESTAMP umfasst die Funktionen NOW() und CURRENT_TIMESTAMP(). Führen Sie die folgende Abfrage aus, um dieselbe Ausgabe anzuzeigen.

SELECT NOW(), CURRENT_TIMESTAMP, CURRENT_TIMESTAMP();

AUSGANG:

NOW() CURRENT_TIMESTAMP CURRENT_TIMESTAMP()
2022-04-26 11:40:25 2022-04-26 11:40:25 2022-04-26 11:40:25

Es ist in MySQL-Version 4.0 und höher verfügbar. Es gibt auch eine konstante Zeit aus, die die Zeit darstellt, zu der diese spezifische Abfrage mit der Ausführung beginnt.

die SYSDATE()-Funktion

Wie die Funktionen NOW() und CURRENT_TIMESTAMP() gibt es auch das aktuelle Datum und die aktuelle Uhrzeit zurück, abhängig vom Kontext, der von dieser Funktion verwendet wird. Der Kontext kann eine Zeichenfolge oder eine Zahl sein.

Für Zeichenfolgen- und numerischen Kontext wird dies als "YYYY-MM-DD HH:MM:SS" bzw. YYYYMMDDHHMMSS zurückgegeben. Die Funktion SYSDATE() gibt die genaue Zeit zurück, zu der die Abfrage ausgeführt wird.

Nachdem wir die MySQL-Dokumentation durchgesehen haben, können wir sagen, dass es einen feinen Unterschied zwischen SYSDATE() und NOW() gibt. Denken Sie daran, dass NOW(), CURRENT_TIMESTAMP und CURRENT_TIMESTAMP() dieselben Ergebnisse zurückgeben.

Führen Sie die folgende Abfrage aus, um den Unterschied festzustellen.

SELECT NOW(), SYSDATE(), CURRENT_TIMESTAMP(),
SLEEP(5), NOW(), SYSDATE(),CURRENT_TIMESTAMP();

AUSGANG:

Holen Sie sich das aktuelle Datum und die aktuelle Uhrzeit in MySQL - jetzt vs. sysdate vs. currenttimestamp

In der oben angegebenen Ausgabe bleibt alles konstant, mit Ausnahme des Ergebnisses, das von der Funktion SYSDATE() vor und nach der Funktion SLEEP() erzeugt wird. Die Methode NOW() gibt die konstante Zeit zurück, die darstellt, wann die Abfrage ausgeführt wird.

In einem Trigger oder einer gespeicherten Prozedur (auch gespeicherte Funktion genannt) gibt NOW() den Zeitpunkt aus, zu dem die auslösende Anweisung oder Funktion mit der Ausführung beginnt. Während das SYSDATE() die genaue Zeit zurückgibt, zu der es läuft (ausführt).

Mehvish Ashiq avatar Mehvish Ashiq avatar

Mehvish Ashiq is a former Java Programmer and a Data Science enthusiast who leverages her expertise to help others to learn and grow by creating interesting, useful, and reader-friendly content in Computer Programming, Data Science, and Technology.

LinkedIn GitHub Facebook