Problem:
Sie möchten das Datum aus einer Datums- und Uhrzeitspalte in einer MySQL-Datenbank abrufen.
Beispiel:
Unsere Datenbank hat eine Tabelle namens travel mit Daten in den Spalten id , first_name , last_name , und timestamp_of_booking .
| id | Vorname | Nachname | timestamp_of_booking |
|---|---|---|---|
| 1 | Lisa | Watson | 2019-04-20 14:15:34 |
| 2 | Tom | Smith | 2019-03-31 20:10:14 |
| 3 | Andy | Markus | 2019-08-03 10:05:45 |
| 4 | Alice | Braun | 2019-07-01 12:47:54 |
Lassen Sie uns für jeden Reisenden seinen Vor- und Nachnamen und das Buchungsdatum nur abrufen . (Hinweis:Der timestamp_of_booking Spalte enthält sowohl Datums- als auch Uhrzeitdaten.)
Lösung:
Wir verwenden das DATE() Funktion. Hier ist die Abfrage, die Sie schreiben würden:
SELECT first_name,
last_name,
DATE(timestamp_of_booking)
AS date_of_booking
FROM travel;
Hier ist das Ergebnis der Abfrage:
| Vorname | Nachname | date_of_booking |
|---|---|---|
| Lisa | Watson | 2019-04-20 |
| Tom | Smith | 2019-03-31 |
| Andy | Markus | 2019-08-03 |
| Alice | Braun | 01.07.2019 |
Diskussion:
Verwenden Sie in MySQL die Funktion DATE(), um das Datum aus einem datetime- oder timestamp-Wert abzurufen. Diese Funktion akzeptiert nur ein Argument – entweder einen Ausdruck, der einen Datums-/Datumszeit-/Zeitstempelwert oder den Namen einer Zeitstempel-/Datumszeitspalte zurückgibt. (In unserem Beispiel verwenden wir eine Spalte des Zeitstempels Datentyp.)
Die Funktion DATE() gibt nur die Datumsinformationen zurück. In unserem Beispiel wird „2019-03-31“ für Tom Smith’s zurückgegeben Buchungsdatum. Beachten Sie, dass die Zeitinformationen nicht enthalten sind.