Die Funktion `CURDATE()` in MySQL gibt das aktuelle Datum im Format `JJJJ-MM-TT` zurück. Sie wird häufig verwendet, um das aktuelle Datum in SQL-Abfragen abzurufen und zu vergleichen.
Verwendung
Die Funktion `CURDATE()` wird verwendet, wenn du bei Datenoperationen mit dem aktuellen Datum arbeiten musst, z. B. beim Filtern von Datensätzen oder beim Setzen von Standard-Datumswerten. Sie benötigt keine Argumente und kann in `SELECT`-, `INSERT`-, `UPDATE`- und `WHERE`-Klauseln verwendet werden.
In diesem Beispiel wird einfach das aktuelle Datum von der Systemuhr des MySQL-Servers abgefragt.
2. Verwendung von CURDATE() in einer WHERE-Klausel
sql
SELECT order_id, order_date
FROM orders
WHERE order_date =CURDATE();Bereitgestellt von
In diesem Beispiel wird `CURDATE()` verwendet, um Bestellungen zu filtern, die am aktuellen Datum aufgegeben wurden.
3. Aktuelles Datum in eine Tabelle einfügen
sql
INSERTINTOattendance(employee_id, date_checked_in)VALUES(123,CURDATE());Bereitgestellt von
Hier wird `CURDATE()` verwendet, um automatisch das aktuelle Datum in die Spalte `date_checked_in` einzufügen, wenn ein neuer Datensatz hinzugefügt wird.
4. Komplexe Abfrage mit Datumsarithmetik
sql
SELECT employee_id
FROM attendance
WHERE date_checked_in =DATE_SUB(CURDATE(),INTERVAL1DAY);Bereitgestellt von
In diesem Beispiel werden die Datensätze der Mitarbeiter abgerufen, die am Tag vor dem aktuellen Datum eingecheckt haben.
Tipps und bewährte Praktiken
Achte auf eine einheitliche Zeitzone. Stelle sicher, dass deine Anwendung und der MySQL-Server dieselben Zeitzoneneinstellungen verwenden, um unerwartete Ergebnisse zu vermeiden.
Verwende `CURDATE()` für reine Datumswerte. Wenn du sowohl Datum als auch Uhrzeit benötigst, solltest du stattdessen `NOW()` verwenden.
Kombiniere mit Datumsfunktionen. Verwende `CURDATE()` neben anderen Datumsfunktionen wie `DATE_ADD()` für komplexere Datumsberechnungen.
Sei dir des impliziten Castings bewusst. Beim Vergleich von `CURDATE()` mit datetime-Spalten kann es zu implizitem Casting kommen, was die Leistung beeinträchtigen kann. Zur Optimierung kannst du die datetime-Spalte explizit mit `CAST(datetime_column AS DATE)` in ein Datum umwandeln.
Die Funktion `CURDATE()` in MySQL gibt das aktuelle Datum im Format `JJJJ-MM-TT` zurück. Sie wird häufig verwendet, um das aktuelle Datum in SQL-Abfragen abzurufen und zu vergleichen.
Verwendung
Die Funktion `CURDATE()` wird verwendet, wenn du bei Datenoperationen mit dem aktuellen Datum arbeiten musst, z. B. beim Filtern von Datensätzen oder beim Setzen von Standard-Datumswerten. Sie benötigt keine Argumente und kann in `SELECT`-, `INSERT`-, `UPDATE`- und `WHERE`-Klauseln verwendet werden.
Diese Syntax gibt das aktuelle Datum als einen Datumswert zurück.
Hinweis: `CURDATE()` und `CURRENT_DATE()` sind Synonyme und können austauschbar verwendet werden.
Beispiele
1. Grundlegende Abfrage des aktuellen Datums
In diesem Beispiel wird einfach das aktuelle Datum von der Systemuhr des MySQL-Servers abgefragt.
2. Verwendung von CURDATE() in einer WHERE-Klausel
In diesem Beispiel wird `CURDATE()` verwendet, um Bestellungen zu filtern, die am aktuellen Datum aufgegeben wurden.
3. Aktuelles Datum in eine Tabelle einfügen
Hier wird `CURDATE()` verwendet, um automatisch das aktuelle Datum in die Spalte `date_checked_in` einzufügen, wenn ein neuer Datensatz hinzugefügt wird.
4. Komplexe Abfrage mit Datumsarithmetik
In diesem Beispiel werden die Datensätze der Mitarbeiter abgerufen, die am Tag vor dem aktuellen Datum eingecheckt haben.
Tipps und bewährte Praktiken