MySQL ist eine kostenlose relationale Datenbank mit einer riesigen Benutzerbasis. Dieser Artikel listet die häufig verwendeten Datumsfunktionen sowie die Datumskonvertierungs- und -formatierungsfunktionen in MySQL auf. 1. WOCHENTAG (Datum) Wählen Sie DAYOFWEEK('2016-01-16') aus. Wählen Sie DAYOFWEEK('2016-01-16 00:00:00') -> 7 (gibt den Wochentag des Datums zurück, denken Sie daran: Sonntag = 1, Montag = 2, ... Samstag = 7) 2. WOCHENTAG(Datum) WOCHENTAG AUSWÄHLEN('2016-01-16') WOCHENTAG AUSWÄHLEN('2016-01-16 00:00:00') -> 5 (gibt an, dass das zurückgegebene Datum die fortlaufende Nummer der Woche ist. Im westlichen Kalender beginnt die Woche normalerweise am Sonntag und beginnt mit 0 zu zählen, also denken Sie daran: 0=Montag, 1=Dienstag, ... 5=Samstag) 3. DAYOFMONTH(Datum) Wählen Sie DAYOFMONTH('2016-01-16') aus. Wählen Sie DAYOFMONTH('2016-01-16 00:00:00') -> 16 (gibt den Tag des Monats an, der zurückgegeben werden soll, 1 für den 1., …, 31 für den 31.) 4. TAG DES JAHRES (Datum) Wählen Sie DAYOFYEAR('2016-03-31') aus. Wählen Sie DAYOFYEAR('2016-03-31 00:00:00') -> 91 (gibt den Tag des Jahres an, der zurückgegeben werden soll, 01.01 gibt 1 zurück, …, 12.31 gibt 365 zurück) 5. MONAT(Datum) MONAT AUSWÄHLEN('2016-01-16') MONAT AUSWÄHLEN('2016-01-16 00:00:00') -> 1 (gibt den Monat des Jahres an, in dem das zurückgegebene Datum liegt. Wenn es Januar ist, wird 1 zurückgegeben, ..., und wenn es Dezember ist, wird 12 zurückgegeben) 6. DAYNAME(Datum) Wählen Sie Tagname ('2016-01-16') Wählen Sie Tagname ('2016-01-16 00:00:00') -> Samstag (gibt an, dass das zurückgegebene Datum der vollständige englische Name des Wochentags ist) 7. MONATSNAME(Datum) Monatsnamen auswählen('2016-01-16') Monatsnamen auswählen('2016-01-16 00:00:00') -> Januar (zeigt an, dass das zurückgegebene Datum der englische Name des Monats im Jahr ist) 8. QUARTAL (Datum) QUARTAL AUSWÄHLEN('2016-01-16') QUARTAL AUSWÄHLEN('2016-01-16 00:00:00') -> 1 (gibt das Quartal des Jahres an, in dem das Datum zurückgegeben wird, und gibt 1, 2, 3, 4 zurück) 9. WOCHE(Datum, Index) Woche auswählen('2016-01-03') Woche auswählen('2016-01-03', 0) Woche auswählen('2016-01-03', 1) -> 1 (Diese Funktion gibt die Wochennummer von date in einem Jahr zurück. date(01.03) ist Sonntag. Standardmäßig ist Sonntag der erste Tag der Woche. Die Funktion gibt hier auf zwei Arten 1 zurück: 1. Gibt 0 für die erste Woche zurück, 1 für die zweite Woche, …. 2. Zählt ab der vollen Woche des Jahres, gibt 1 für die erste Woche zurück, 2 für die zweite Woche, … und 53 für die letzte Woche) -> 1 (der Standardindex von week() ist 0. Das Ergebnis ist also das gleiche wie oben) -> 0 (Wenn der Index 1 ist, bedeutet dies, dass der erste Tag der Woche Montag ist, also ist Montag der 4. der Starttag der zweiten Woche) 10. JAHR(Datum) JAHR AUSWÄHLEN('70-01-16') JAHR AUSWÄHLEN('2070-01-16') JAHR AUSWÄHLEN('69-01-16 00:00:00') -> 1970 (stellt das 4-stellige Jahr des zurückgegebenen Datums dar) -> 2070 -> 1969 Beachten Sie: Wenn das Jahr nur zwei Ziffern lang ist, verwendet der automatische Vervollständigungsmechanismus das Standarddatum 01.01.1970 als Grenze und vervollständigt 19 für Jahre >= 70 und 20 für Jahre < 70. 11. STUNDE (Uhrzeit) Stunde auswählen('11:22:33') STUNDE AUSWÄHLEN('2016-01-16 11:22:33') -> 11 -> 11 Gibt den Stundenwert des Datums oder der Uhrzeit zurück, Wertebereich (0-23) 12. MINUTE (Zeit) MINUTE AUSWÄHLEN('11:22:33') MINUTE AUSWÄHLEN('2016-01-16 11:44:33') -> 22 -> 44 Gibt den Minutenwert der Zeit zurück, Wertebereich (0-59) 13. SEKUNDE (Zeit) WÄHLEN SIE ZWEITE('11:22:33') ZWEITE AUSWÄHLEN('2016-01-16 11:44:22') -> 33 -> 22 Gibt den Minutenwert der Zeit zurück, Wertebereich (0-59) 14. PERIOD_ADD (Monat, hinzufügen) Wählen Sie Periode_add(1601,2) Wählen Sie Periode_add(191602,3) Wählen Sie Periode_add(191602,-3) -> 201603 -> 191605 -> 191511 Diese Funktion gibt das Ergebnis der Addition oder Subtraktion des Monats zurück. Das Monatsformat ist jjmm oder jjjjmm. Das zurückgegebene Ergebnis ist im Format jjjjmm. Add kann negative Werte übergeben. 15. PERIOD_DIFF(Monatsbeginn, Monatsende) Wählen Sie Periodendifferenz (1601,1603) aus. Wählen Sie Periodendifferenz (191602,191607) aus. Wählen Sie Periodendifferenz (1916-02,1916-07) aus. Wählen Sie Periodendifferenz (1602,9002) aus. -> -2 -> -5 -> 5 -> 312 Diese Funktion gibt die Anzahl der Monate zwischen Monatsanfang und Monatsende zurück. 16. DATE_ADD(Datum, INTERVAL-Zahlentyp), dasselbe wie ADDDATE() SELECT DATE_ADD("2015-12-31 23:59:59",INTERVALL 1 SEKUNDE) SELECT DATE_ADD("2015-12-31 23:59:59",INTERVALL 1 TAG) SELECT DATE_ADD(„2015-12-31 23:59:59“, INTERVALL „1:1“ MINUTE_SEKUNDE) SELECT DATE_ADD(„2016-01-01 00:00:00“, INTERVALL „-1 10“ TAG_STUNDE) -> 01.01.2016 00:00:00 -> 01.01.2016 23:59:59 -> 01.01.2016 00:01:00 -> 30.12.2015 14:00:00 DATE_ADD() und ADDDATE() geben das Ergebnis von Datumsoperationen zurück 1. Das Datumsformat kann „15-12-31“, „15-12-31 23:59:59“ oder „2015-12-31 23:59:59“ sein. Wenn der Parameter „date“ im Datumsformat vorliegt, wird das Ergebnis im Datumsformat zurückgegeben. Wenn der Parameter „date“ im Datums-/Uhrzeitformat vorliegt, wird das Ergebnis im Datums-/Uhrzeitformat zurückgegeben. 2. Typformat:
WÄHLEN SIE „2016-01-01“ - INTERVALL 1 SEKUNDE Wählen Sie „2016-01-01“ – Intervall 1 Tag SELECT '2016-12-31 23:59:59' + INTERVALL 1 SEKUNDE SELECT '2016-12-31 23:59:59' + INTERVALL "1:1" MINUTE_SEKUNDE Widerrufsfolgen: -> 31.12.2015 23:59:59 -> 31.12.2015 -> 01.01.2017 00:00:00 -> 01.01.2017 00:01:00 17. DATE_SUB(Datum, INTERVAL-Zahlentyp), dasselbe wie SUBDATE() Die Verwendung ist ähnlich wie bei DATE_ADD() und ADDDATE(), das eine ist Addition und das andere ist Subtraktion. Bei der Verwendung beziehen Sie sich auf 16 Uhr. Für die spezifische Verwendung beziehen Sie sich bitte auf DATE_ADD() und ADDDATE(). 18. TO_DAYS(Datum) Wählen Sie TO_DAYS('2016-01-16') aus. Wählen Sie TO_DAYS('20160116') aus. Wählen Sie TO_DAYS('160116') aus. -> 736344 -> 736344 -> 736344 Gibt die Gesamtzahl der Tage von 0 AD bis zum heutigen Datum zurück 19. FROM_DAYS(Datum) AUSWÄHLEN VON_TAGEN(367) -> 0001-01-02 Gibt den DATE-Wert der Anzahl der Tage vom Jahr 0 n. Chr. bis zur Gegenwart zurück 20. DATE_FORMAT(Datum, Format): formatiert das Datum entsprechend den Parametern. Wählen Sie Datumsformat ('2016-01-16 22:23:00', '%W %M %Y') Wählen Sie Datumsformat ('2016-01-16 22:23:00', '%D %y %a %d %m %b %j') Wählen Sie Datumsformat ('2016-01-16 22:23:00', '%H %k %I %r %T %S %w') Wählen Sie Datumsformat ('2016-01-16 22:23:00', '% Y-% m-% d % H:% i:% s') -> Samstag Januar 2016 -> 16.16 Sa 16 01 Jan 016 -> 22 22 10 22:23:00 Uhr 22:23:00 00 6 -> 16.01.2016 22:23:00 Die Formate sind unten aufgeführt: %M Monatsname (Januar...Dezember) TIME_FORMAT(Zeit,Format): 21. Aktuelles Systemdatum abrufen Wählen Sie CURDATE() AKTUELLES DATUM AUSWÄHLEN() -> 16.01.2016 -> 16.01.2016 22. Aktuelle Systemzeit abrufen Wählen Sie CURTIME() AKTUELLE ZEIT AUSWÄHLEN() -> 17:44:22 -> 17:44:22 23. NOW(), SYSDATE(), CURRENT_TIMESTAMP(), LOCALTIME(): Ruft das aktuelle Datum und die aktuelle Uhrzeit des Systems ab JETZT AUSWÄHLEN() Wählen Sie SYSDATE() aus. Wählen Sie CURRENT_TIMESTAMP() AKTUELLEN ZEITSTEMPEL AUSWÄHLEN Wählen Sie lokale Zeit () ORTSZEIT AUSWÄHLEN -> 16.01.2016 17:44:41 -> 16.01.2016 17:44:41 -> 16.01.2016 17:44:41 -> 16.01.2016 17:44:41 -> 16.01.2016 17:44:41 -> 16.01.2016 17:44:41 24. UNIX_TIMESTAMP(Datum): Zeitstempel abrufen SELECT UNIX_TIMESTAMP() Wählen Sie UNIX_TIMESTAMP('2016-01-16') SELECT UNIX_TIMESTAMP('2016-01-16 23:59:59') -> 1452937627 -> 1452873600 -> 1452959999 25. FROM_UNIXTIME(unix_timestamp,format): Zeitstempel in Datum und Uhrzeit umwandeln Wählen Sie FROM_UNIXTIME(1452959999) aus. Wählen Sie FROM_UNIXTIME(1452959999,'%Y-%m-%d %H:%i:%s') -> 16.01.2016 23:59:59 -> 16.01.2016 23:59:59 26. SEC_TO_TIME(Sekunden): Konvertiert Sekunden in Zeit WÄHLEN SIE SEC_TO_TIME (2378) -> 00:39:38 27. TIME_TO_SEC(Zeit): Zeit in Sekunden umrechnen Wählen Sie TIME_TO_SEC('22:23:00') -> 2378 28. ADDTIME(Zeit, Zeiten): Zeiten zur Zeit hinzufügen Wählen Sie ADDTIME("2015-12-31 23:59:59",'01:01:01') -> 01.01.2016 01:01:00 29. CONVERT_TZ(date,from_tz,to_tz): Zeitzone konvertieren Wählen Sie CONVERT_TZ('2004-01-01 12:00:00','+00:00','+10:00') -> 01.01.2004 22:00:00 30. STR_TO_DATE(Datum, Format): Konvertiert einen String in ein Datum und eine Uhrzeit im Format Wählen Sie STR_TO_DATE('2015-01-01', '%Y-%m-%d') -> 01.01.2015 31. LAST_DAY(Datum): Ruft den letzten Tag des Monats ab. WÄHLEN SIE LETZTEN TAG (SYSDATE()) WÄHLEN SIE LETZTEN TAG('2015-02-02') WÄHLEN SIE LETZTEN TAG('2015-02-02 00:22:33') -> 31.01.2016 -> 28.02.2015 -> 28.02.2015 32. MAKEDATE(Jahr, TagdesJahres): Ermittelt das Datum basierend auf den Parametern (Jahr, Tag) WÄHLEN SIE DAS HERSTELLUNGSDATUM (2015, 32) -> 01.02.2015 33. MAKETIME(Stunde, Minute, Sekunde): Ermittelt die Zeit entsprechend den Parametern (Stunde, Minute, Sekunde) WÄHLE MAKETIME(12, 23, 34) -> 12:23:34 34. YEARWEEK(date): Jahr und Woche eines Datums ermitteln Wählen Sie YEARWEEK(SYSDATE()) Wählen Sie YEARWEEK('2015-01-10') Wählen Sie JAHRWOCHE('2015-01-10',1) -> 201602 -> 201501 -> 201502 35. WEEKOFYEAR(date): Ermittelt die Kalenderwoche des Jahres, in der sich der aktuelle Tag befindet Wählen Sie WEEKOFYEAR(SYSDATE()) aus. Wählen Sie WEEKOFYEAR('2015-01-10') -> 2 -> 2 -> 2 Einige häufig verwendete Zeitformatkonvertierungsfunktionen in MySQL werden wie folgt zusammengefasst 1. from_unixtime(Zeitstempel, Format): Zeitstempel ist eine int-Zeit, z. B. 14290450779; Format ist das Konvertierungsformat, einschließlich der folgenden Formate: %M Monatsname (Januar...Dezember) 2. unix_timestamp(Datum): Die Funktion ist das genaue Gegenteil von from_unixtime(). Erstere wandelt den Unix-Zeitstempel in eine lesbare Zeit um, während unix_timestamp() die lesbare Zeit in einen Unix-Zeitstempel umwandelt, der beim Sortieren der in datetime gespeicherten Zeit verwendet wird. Beispielsweise ergibt unix_timestamp('2009-08-06 10:10:40') 1249524739. Wenn unix_timestamp() aufgerufen wird, ohne Parameter zu übergeben, wird die Funktion now() aufgerufen, um automatisch die aktuelle Zeit abzurufen. 3. date_format(Datum, Format): date_format() konvertiert einen Wert vom Typ „Datum“ oder „Datum/Uhrzeit“ in ein beliebiges Zeitformat. In einem gängigen Anwendungsszenario verfügt eine Tabelle beispielsweise über ein Feld für die Aktualisierungszeit, das im datetime-Typ gespeichert ist. Bei der Anzeige im Frontend müssen jedoch nur Jahr, Monat und Tag (xxxx-xx-xx) angezeigt werden. In diesem Fall kann date_format(date,'%Y-%m-%d ') verwendet werden, ohne dass eine Programmschleife im Ergebnissatz erforderlich ist. Das könnte Sie auch interessieren:
|
<<: Detaillierte Erklärung von Objektliteralen in JS
>>: Installation und Daemon-Konfiguration von Redis unter Windows und Linux
Docker-Fehler 1. Überprüfen Sie die Ursache Docke...
Vorwort Zum Leistungsvergleich zwischen „group by...
In diesem Artikelbeispiel wird der spezifische Ja...
Vorwort Das ursprüngliche Projekt wurde im öffent...
Es gibt eine neue Funktion, die das Erfassen eine...
In der Vergangenheit wurde Float häufig für das L...
Einführung in Git Git ist eine Open-Source-Versio...
Manchmal müssen wir einige Befehle auf einem Remo...
Inhaltsverzeichnis 1. Deduplizierung einrichten 2...
Vorwort [root@localhost ~]# cat /etc/fstab # # /e...
Inhaltsverzeichnis 1. Einführung in Hochverfügbar...
Aus Erfahrung weiß man, dass es eine gute Angewoh...
Inhaltsverzeichnis Fehler 1: Zu viele Datenspalte...
Inhaltsverzeichnis Vorwort 1. Ermitteln Sie die L...
Voraussetzungen Um Container auf Windows Server a...