Mysql
 sql >> Datenbank >  >> RDS >> Mysql

Gibt Tag, Monat und Jahr in MySQL zurück

MySQL verfügt über eine Reihe verschiedener Funktionen, die es uns ermöglichen, verschiedene Datumsteile – wie Tag, Monat und Jahr – aus einem Datum zu erhalten.

Das DATE_FORMAT() Funktion

Das DATE_FORMAT() Funktion ist großartig, wenn Sie die Datumsteile alle in einem einzigen Feld zurückgeben möchten.

Beispiel:

SELECT DATE_FORMAT('2035-12-19', '%W, %D %M %Y');

Ergebnis:

Wednesday, 19th December 2035

Sie können auch nur die kurzen Tages- und Monatsnamen zurückgeben, wenn dies das gewünschte Ergebnis ist:

SELECT DATE_FORMAT('2035-12-19', '%a, %D %b %Y');

Ergebnis:

Wednesday, 19th December 2035

Oder Sie können die Tagesmonatszahlen zurückgeben:

SELECT DATE_FORMAT('2035-12-19', '%d/%c/%Y');

Ergebnis:

19/12/2035

Sie können bei Bedarf auch jeden Datumsteil in einem eigenen Feld zurückgeben:

SELECT 
    DATE_FORMAT('2035-12-19', '%d') AS Day,
    DATE_FORMAT('2035-12-19', '%c') AS Month,
    DATE_FORMAT('2035-12-19', '%Y') AS Year;

Ergebnis:

+------+-------+------+
| Day  | Month | Year |
+------+-------+------+
| 19   | 12    | 2035 |
+------+-------+------+

In dieser vollständigen Liste der Formatbezeichner finden Sie einen vollständigen Überblick über die Formatbezeichner, die Sie zum Erstellen einer Formatzeichenfolge verwenden können.

DATE_FORMAT() akzeptiert auch ein optionales locale-Argument, mit dem Sie die Sprache der Tages- und Monatsnamen angeben können. Siehe MySQL DATE_FORMAT() Beispiele für mehr.

Der EXTRACT() Funktion

Der EXTRACT() Mit dieser Funktion können Sie eine bestimmte Einheit aus dem Datum extrahieren. Daher können Sie es verwenden, um Tag, Monat und Jahr (sowie andere Einheiten) aus dem Datum zu extrahieren.

Beispiel:

SELECT 
    EXTRACT(DAY FROM '2035-12-19') AS Day,
    EXTRACT(MONTH FROM '2035-12-19') AS Month,
    EXTRACT(YEAR FROM '2035-12-19') AS Year;

Ergebnis:

+------+-------+------+
| Day  | Month | Year |
+------+-------+------+
| 19   | 12    | 2035 |
+------+-------+------+

Funktionen zur Rückgabe einer bestimmten Datumseinheit

MySQL hat auch einige spezifischere Funktionen, die eine bestimmte Datumseinheit zurückgeben.

Nachfolgend finden Sie eine Liste der Funktionen, die Tag, Monat und Jahr aus einem Datum zurückgeben.

Der DAYNAME() Funktion

MySQL hat mehr als eine Funktion, um den Tag zurückzugeben. Dies liegt daran, dass es mehr als eine Möglichkeit gibt, den Tag darzustellen. MySQL muss wissen, ob Sie den Tagesnamen, die Nummer des Wochentags, den Tag des Monats, den Tag des Jahres usw. wollen.

Der DAYNAME() Die Funktion gibt den Namen des Wochentags zurück:

SELECT DAYNAME('2035-12-19');

Ergebnis:

Wednesday

Der DAYOFMONTH() Funktion

Der DAYOFMONTH() Die Funktion gibt den Tag des Monats zurück.

Beispiel:

SELECT DAYOFMONTH('2035-12-19');

Ergebnis:

19

Der DAY() Funktion

Der DAY() Funktion ist eigentlich ein Synonym für DAYOFMONTH() Funktion.

Beispiel:

SELECT DAY('2035-12-19');

Ergebnis:

19

Wie erwartet dasselbe Ergebnis wie DAYOFMONTH() .

Der DAYOFWEEK() Funktion

Der DAYOFWEEK() Die Funktion gibt den Wochentagindex für das Datum zurück, wie vom ODBC-Standard angegeben (1 =Sonntag, 2 =Montag, …, 7 =Samstag).

Beispiel:

SELECT DAYOFWEEK('2035-12-19');

Ergebnis:

4

Siehe WEEKDAY() unten für unterschiedliche Indexierung.

Der WEEKDAY() Funktion

Der WEEKDAY() Funktion ähnelt DAYOFWEEK() , dass es den Wochenindex für das Datum zurückgibt. Der Unterschied besteht darin, dass eine andere Indexnummerierung verwendet wird (0 =Montag, 1 =Dienstag, … 6 =Sonntag).

Beispiel:

SELECT WEEKDAY('2035-12-19');

Ergebnis:

2

Der DAYOFYEAR() Funktion

Das DAYOFYEAR() Die Funktion gibt den Tag des Jahres für das Datum im Bereich 1 zurück zu 366 .

Beispiel:

SELECT DAYOFYEAR('2035-12-19');

Ergebnis:

353

Der MONTH() Funktion

Der MONTH() Die Funktion gibt den Monat im Bereich 1 zurück bis 12 für Januar bis Dezember oder 0 für Datumsangaben, die einen nullmonatigen Teil haben (z. B. 0000-00-00 ).

Beispiel:

SELECT MONTH('2035-12-19');

Ergebnis:

12

Der MONTHNAME() Funktion

Wie der Name schon sagt, der MONTHNAME() Funktion gibt den Monatsnamen zurück. Die für den Namen verwendete Sprache wird durch den Wert von lc_time_names gesteuert Systemvariable.

Beispiel:

SELECT MONTHNAME('2035-12-19');

Ergebnis:

December

Das YEAR() Funktion

Das YEAR() Die Funktion gibt den Jahresteil des Datums zurück.

Beispiel:

SELECT YEAR('2035-12-19');

Ergebnis:

2035