Heim  >  Artikel  >  Datenbank  >  Welche Datums- und Uhrzeittypen und Formatierungsmethoden gibt es in MySQL?

Welche Datums- und Uhrzeittypen und Formatierungsmethoden gibt es in MySQL?

王林
王林nach vorne
2023-06-02 22:49:045049Durchsuche

Welche Datums- und Uhrzeittypen und Formatierungsmethoden gibt es in MySQL?

【1】Datum/Uhrzeit-Typ in MySQL

In MySQL sind Datum, Datum/Uhrzeit, Uhrzeit, Jahr und Zeitstempel häufig verwendete Zeiten. ?? #Maximum

Ein Wert von Null bedeutet Datum4# 🎜🎜 #0000-00-00 #🎜 🎜#datetime81000-01-01 00:00:009999-12-31 23:59:59 #🎜 🎜#Zeitstempel#🎜 🎜# 19700101080001Irgendwann im Jahr 20380000000000000000#🎜🎜 #3#🎜🎜 #-838:59#🎜🎜 #Jahr1190121550000#🎜 🎜## 🎜🎜##🎜 🎜#
1000-01-01 9999-12-31
0000-00-00 00:00:00
4 #🎜#Zeit
838:59:59 00:00:00

Ausführliche Erklärung

  • datetime : Zeit-Datumstyp, das Format ist JJJJ-mm-tt HH:ii:ss, der Bereich liegt zwischen 1000 und 9999. Aber es gibt einen Nullwert, 0000-00-00 00:00:00; datetime : 时间日期型,格式是YYYY-mm-dd HH:ii:ss,表示的范围是从1000到9999。但是有零值,0000-00-00 00:00:00;

  • date:日期,就是datetime中的date部分;

  • time:时间(段),指定的某个区间之间,从-时间到+时间(有负时间表示);

  • timestamp:时间戳,并不是常规意义时间戳(如:14253685),范围是’1970-01-01 00:00:00’到2037年。格式为YYYY-mm-dd HH:ii:ss,格式与datetime完全一致;

  • year:yy和yyyy,yyyy的范围是1901-2155,yy的范围是1970-2069。

两位year(00-69表示2000-2069,70-99表示1970~1999)。当应用只需要记录年份时,year比date更省空间

SQL语句实例

create table my_date(
	d1 datetime,
	d2 date,
	d3 time,
	d4 timestamp,
	d5 year
)charset utf8;
desc my_date

如下图所示:year默认为4位,即YYYY; timestamp不能为空,有默认值,在创建新记录和修改现有记录的时候都对这个数据列刷新。

Welche Datums- und Uhrzeittypen und Formatierungsmethoden gibt es in MySQL?

如下分别插入几条数据并对time做差异分析:

insert into my_date VALUES('2015-09-28 11:50:36','2015-09-28','11:50:54','2015-09-28 11:51:08','2015');
insert into my_date VALUES('2015-09-28 11:50:36','2015-09-28','-11:50:54','2015-09-28 11:51:08','2015');-- -11
insert into my_date VALUES('2015-09-28 11:50:36','2015-09-28','-211:50:54','2015-09-28 11:51:08','2015');-- -2 11
insert into my_date VALUES('2015-09-28 11:50:36','2015-09-28','-2 11:50:54','2015-09-28 11:51:08','2015');-- -2过去两天
#year用69标识-2069
insert into my_date VALUES('2015-09-28 11:50:36','2015-09-28','11:50:54','2015-09-28 11:51:08','69');-- 69
#year用70标识-1970
insert into my_date VALUES('2015-09-28 11:50:36','2015-09-28','11:50:54','2015-09-28 11:51:08','70');-- 70

Welche Datums- und Uhrzeittypen und Formatierungsmethoden gibt es in MySQL?

Welche Datums- und Uhrzeittypen und Formatierungsmethoden gibt es in MySQL?

timestamp字段

默认情况下只要当前所在的记录被更新,该字段一定会自动更新成当前时间。

update my_date set d1 = SYSDATE() where d5=69;
select * from my_date

Welche Datums- und Uhrzeittypen und Formatierungsmethoden gibt es in MySQL?

那么MySQL可以拿到真正的时间戳吗?当然可以!

select UNIX_TIMESTAMP();

Welche Datums- und Uhrzeittypen und Formatierungsmethoden gibt es in MySQL?

测试实例

4.1 查询当前时间

SELECT SYSDATE() from dual;

Welche Datums- und Uhrzeittypen und Formatierungsmethoden gibt es in MySQL?

4.2 将当前时间插入以上几种类型列中

insert INTO `user` (name,number,date,datetime,timestamp,time,year)
VALUES (
'Loum',3,SYSDATE(),SYSDATE(),SYSDATE(),SYSDATE(),2016
);

Welche Datums- und Uhrzeittypen und Formatierungsmethoden gibt es in MySQL?

4.3 mysql中datetime类型的长度位数

如下所示,通常我们MySQL中设计datetime类型长度都默认为0:

`work_time` datetime(0) DEFAULT NULL COMMENT '清收时间',

常见的时间格式通常是2020-08-29 12:52:16,其中插入当前时间。但是如果datetime(n)中的n不为0呢?

`work_time` datetime(2) DEFAULT NULL COMMENT '清收时间',
# datetime(n)中的n最大值为6
`work_time` datetime(6) DEFAULT NULL COMMENT '清收时间',

这时在MySQL中会分别显示如下:

2020-08-29 12:52:16.01
2020-08-29 12:52:16.014057

会发现最后有一个小数点且小数点后面会分别对应相应位数的数字–这称之为纳秒。

总结如下:

  • date : 只有日期,没有时间;

  • datetime:有时间,有日期;

  • time:只有时间 ,精确到分秒 ;

  • timestamp:时间戳,精确到分秒;

  • year

date: Datum ist der Datumsteil von datetime;

time: Zeit (Segment), zwischen einem angegebenen Intervall, von - Zeit bis + Zeit (dargestellt durch negative Zeit);

timestamp: Zeitstempel, kein herkömmlicher Zeitstempel (Beispiel: 14253685) , der Bereich ist „1970-01-01 00:00:00“ bis 2037. Das Format ist JJJJ-MM-TT HH:ii:ss,

Das Format stimmt vollständig mit datetime überein; Welche Datums- und Uhrzeittypen und Formatierungsmethoden gibt es in MySQL?

🎜🎜🎜year: yy und yyyy, der Bereich von yyyy ist 1901-2155, und der Bereich von yy ist 1970-2069. 🎜🎜🎜🎜 Zweistelliges Jahr (00-69 bedeutet 2000-2069, 70-99 bedeutet 1970~1999). Wenn die Anwendung nur das Jahr aufzeichnen muss, spart das Jahr mehr Platz als das Datum und hat einen Standardwert. Diese Datenspalte wird aktualisiert, wenn neue Datensätze erstellt und vorhandene Datensätze geändert werden. 🎜🎜Was sind die Datums- und Uhrzeittypen und Formatierungsmethoden in MySQL🎜 🎜Fügen Sie mehrere Datenelemente ein und führen Sie die Zeitdifferenzanalyse wie folgt durch: 🎜
SELECT DATE_FORMAT(SYSDATE(),'%Y-%m-%d %H:%i:%s') from dual;
🎜MySQL Was sind die Datums- und Uhrzeittypen und Formatierungsmethoden in 🎜🎜MySQL Was? Ist der Datums- und Uhrzeittyp und die Formatierungsmethode?🎜

Zeitstempelfeld

🎜Solange der aktuelle Datensatz aktualisiert wird, wird dieses Feld standardmäßig automatisch auf die aktuelle Zeit aktualisiert. 🎜
str_to_date(
	'2016-12-15 16:48:40',
	'%Y-%m-%d %H:%i:%S'
)
🎜Was sind die Datums- und Uhrzeittypen und Formatierungsmethoden in MySQL 🎜🎜Kann MySQL also den echten Zeitstempel erhalten? Sicher! 🎜rrreee🎜Was sind die Datums- und Uhrzeittypen und Formatierungsmethoden in MySQL 🎜

🎜Testbeispiel🎜

🎜🎜4.1 Aktuelle Uhrzeit abfragen🎜🎜rrreee🎜Was sind die Datums- und Uhrzeittypen und Formatierungsmethoden in MySQL🎜🎜🎜4.2 Fügen Sie die aktuelle Uhrzeit in die oben genannten Spaltentypen ein🎜🎜rrreee🎜Was sind die Datums- und Uhrzeittypen und Formatierungsmethoden in MySQL🎜🎜🎜4.3 Die Länge des Datums-/Uhrzeittyps in MySQL in Ziffern🎜 🎜🎜 ist wie folgt: Wie gezeigt, ist die Länge des datetime-Typs in unserem MySQL normalerweise standardmäßig auf 0 ausgelegt: 🎜rrreee🎜Das übliche Zeitformat ist normalerweise 2020-08-29 12:52:16, in dem die aktuelle Zeit wird eingefügt. Was aber, wenn n in datetime(n) nicht 0 ist? 🎜rrreee🎜Zu diesem Zeitpunkt wird es in MySQL wie folgt angezeigt: 🎜
🎜2020-08-29 12:52:16.01🎜2020-08-29 12:52:16.014057🎜
🎜Das werden Sie Finden Sie heraus, dass es am Ende eine gibt. Der Dezimalpunkt und die Anzahl der Nachkommastellen entsprechen der Anzahl der Ziffern – dies wird als Nanosekunde bezeichnet. 🎜🎜🎜 wird wie folgt zusammengefasst: 🎜🎜🎜🎜🎜date: Nur Datum, keine Uhrzeit; 🎜🎜🎜🎜datetime: Es gibt Zeit, aber Datum; 🎜🎜 🎜🎜Zeit: nur Zeit, auf Minuten und Sekunden genau; 🎜🎜🎜🎜Zeitstempel: Zeitstempel, auf Minuten und Sekunden genau; 🎜🎜🎜🎜Jahr: Jahr, z. B. 2002, wenn es als 15.01.2002 geschrieben wird, wird die Berechnung durchgeführt und das Einfügeergebnis ist 1986 Sie können die Funktion date_format( ) verwenden, um eine Zeitkonvertierung durchzuführen. 🎜rrreee🎜🎜🎜<h4><strong> date_format( ) 转换格式</strong></h4> <table> <thead><tr class="firstRow"> <th>格式</th> <th>描述</th> </tr></thead> <tbody> <tr> <td>%a</td> <td>缩写星期名</td> </tr> <tr> <td>%b</td> <td>缩写月名</td> </tr> <tr> <td>%c</td> <td>月,数值</td> </tr> <tr> <td>%D</td> <td>带有英文前缀的月中的天</td> </tr> <tr> <td>%d</td> <td>月的天,数值(00-31)</td> </tr> <tr> <td>%e</td> <td>月的天,数值(0-31)</td> </tr> <tr> <td>%f</td> <td>微秒</td> </tr> <tr> <td>%H</td> <td>小时 (00-23)</td> </tr> <tr> <td>%h</td> <td>小时 (01-12)</td> </tr> <tr> <td>%I</td> <td>小时 (01-12)</td> </tr> <tr> <td>%i</td> <td>分钟,数值(00-59)</td> </tr> <tr> <td>%j</td> <td>年的天 (001-366)</td> </tr> <tr> <td>%k</td> <td>小时 (0-23)</td> </tr> <tr> <td>%l</td> <td>小时 (1-12)</td> </tr> <tr> <td>%M</td> <td>月名</td> </tr> <tr> <td>%m</td> <td>月,数值(00-12)</td> </tr> <tr> <td>%p</td> <td>AM 或 PM</td> </tr> <tr> <td>%r</td> <td>时间,12-小时(hh:mm:ss AM 或 PM)</td> </tr> <tr> <td>%S</td> <td>秒(00-59)</td> </tr> <tr> <td>%s</td> <td>秒(00-59)</td> </tr> <tr> <td>%T</td> <td>时间, 24-小时 (hh:mm:ss)</td> </tr> <tr> <td>%U</td> <td>周 (00-53) 星期日是一周的第一天</td> </tr> <tr> <td>%u</td> <td>周 (00-53) 星期一是一周的第一天</td> </tr> <tr> <td>%V</td> <td>周 (01-53) 星期日是一周的第一天,与 %X 使用</td> </tr> <tr> <td>%v</td> <td>周 (01-53) 星期一是一周的第一天,与 %x 使用</td> </tr> <tr> <td>%W</td> <td>星期名</td> </tr> <tr> <td>%w</td> <td>周的天 (0=星期日, 6=星期六)</td> </tr> <tr> <td>%X</td> <td>年,其中的星期日是周的第一天,4 位,与 %V 使用</td> </tr> <tr> <td>%x</td> <td>年,其中的星期一是周的第一天,4 位,与 %v 使用</td> </tr> <tr> <td>%Y</td> <td>年,4 位</td> </tr> <tr> <td>%y</td> <td>年,2 位</td> </tr> </tbody> </table> <h4><strong> str_to_date()函数</strong></h4> <p>字符串转换为date:</p><pre class="brush:sql;">str_to_date( &amp;#39;2016-12-15 16:48:40&amp;#39;, &amp;#39;%Y-%m-%d %H:%i:%S&amp;#39; )</pre>

Das obige ist der detaillierte Inhalt vonWelche Datums- und Uhrzeittypen und Formatierungsmethoden gibt es in MySQL?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Dieser Artikel ist reproduziert unter:yisu.com. Bei Verstößen wenden Sie sich bitte an admin@php.cn löschen