Heim >Datenbank >MySQL-Tutorial >Kann MySQL die Datumsverarbeitung durchführen?

Kann MySQL die Datumsverarbeitung durchführen?

青灯夜游
青灯夜游Original
2020-10-07 12:40:242579Durchsuche

MySQL kann die Datumsverarbeitung durchführen; dazu können integrierte Funktionen wie CURDATE(), NOW(), YEAR(), MONTH(), DAY(), HOUR(), MINUTE(), SECOND() verwendet werden Datumsverarbeitung. Beispiel „SELECT CURDATE()“ ruft das aktuelle Datum ab.

Kann MySQL die Datumsverarbeitung durchführen?

Ein aktuelles Projekt erforderte das Schreiben vieler SQL-Anweisungen. Es ist mit einem hohen zeitlichen Bearbeitungsaufwand verbunden, lassen Sie uns nun ein kurzes Resümee ziehen.

1. Zeitformat: In diesem Projekt wurde die Datenbanktabellenstruktur möglicherweise nach und nach vereinheitlicht. Einige Tabellen speichern lange Zeitstempel gespeichert, und einige Tabellen speichern die Zeit. Gleichzeitig ist das Format 20171225, 25.12.2017 usw., was überhaupt nicht einheitlich ist. Dies erhöht den Arbeitsaufwand für das Projekt und verursacht auch einige Probleme. Wenn Sie beispielsweise Hintergrundcode schreiben, muss die Zeit verarbeitet werden, um sie an das Zeitformat der Datenbank anzupassen. Wenn Sie eine gemeinsame Abfrage durchführen, ist das Zeitformat nicht einheitlich und das Zeitformat der SQL-Anweisung wird konvertiert , was zu aufgeblähten SQL-Anweisungen führt. Daher sollte das Zeitformat innerhalb desselben Projekts konsistent bleiben. Persönlich denke ich, dass der lange Typ Zeitstempel und der String-Typ jjjj-MM-tt HH:mm:ss besser sind.

Der lange Zeitstempeltyp liegt daran, dass es für den Hintergrund-Java-Code einfach ist, den Datumstyp „Zeit“ in einen Zeitstempel umzuwandeln.

Der String-Typ liegt daran, dass wir den Datumstyp während der Anwendung nicht in den String-Typ konvertieren müssen, wenn wir das Zeitfeld häufig verwenden. Er ist intuitiver und bequemer zu verwenden.

2. Häufig verwendete Zeitanweisungen

SELECT  CURDATE():2020-10-7  //此时日期
SELECT  NOW() : 2020-10-7 22:20:21  //此刻时间
SELECT  YEAR('2020-10-7 22:27:45'): 2020 //获取时间的年份
SELECT  MONTH('2020-10-7 22:27:45'): 10 //获取时间的月份
SELECT  DAY('2020-10-7 22:27:45'):25  //获取时间的天数
SELECT  HOUR('2020-10-7 22:27:45'):22  //获取时间的小时
SELECT  MINUTE('2020-10-7 22:27:45'):27  //获取时间的分钟
SELECT  SECOND('2020-10-7 22:27:45'):45  //获取时间的秒数
SELECT  DATE_SUB(NOW(),INTERVAL   1   YEAR)  //在目前的时间减去一年,该语句可以进行多种操作,指定时间下减去x年:DATE_SUB("2017-12-25",INTERVAL x YEAR),同时可以减去 x month/day/hour/minute/second等
SELECT  DATE_ADD(NOW(),INTERVAL 1 YEAR)  //同上,在目前的时间上加上一年
SELECT  CONCAT('2017','-12-12'):2017-12-12  //组装字符串,可以组装成任何时间格式,也可以使用如上语句,例如:SELECT CONCAT(YEAR(NOW()),'-12-12') :2017-12-12 ;
SELECT UNIX_TIMESTAMP('2017-12-25'):1514131200  //字符串转换成时间戳
SELECT FROM_UNIXTIME(1514131200) :2017-12-25 00:00:00  //时间戳转化为时间
SELECT DATE_FORMAT('2017-12-25 22:23:01', '%Y-%m-%d %H:%i:%s');   //字符串转化为时间格式(date),也可以时间格式转化为字符串格式

Die oben genannten sind einige häufig verwendete zeitbezogene Anweisungen in MySQL.

Empfohlenes Tutorial:

MySQL-Video-Tutorial

Das obige ist der detaillierte Inhalt vonKann MySQL die Datumsverarbeitung durchführen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn