Jenis medan masa boleh menjadi masa tarikh dan cap masa Berikut ialah jadual untuk menunjukkan perbezaan antara kedua-duanya:
cap waktu Diterjemah ke dalam bahasa Cina, ia ialah "cap masa". Ia ialah bilangan saat dari masa semasa hingga tahun pertama Unix (1 Januari 1970, 0:00:00 Ia menduduki 4 bait dan disimpan dalam UTC format Ia Zon masa semasa diambil dan ditukar secara automatik. Datetime disimpan dalam 8 bait dan tiada pengambilan zon masa dilakukan. Dalam erti kata lain, untuk cap waktu, jika zon waktu semasa menyimpan berbeza daripada zon waktu semasa mendapatkan semula, data yang dikeluarkan juga akan berbeza. Untuk datetime, anda mendapat apa yang anda simpan. Berikut ialah beberapa kes biasa dan cadangan pemilihan. dan FROM_UNIXTIME()
untuk menukar nombor tarikh dan cap masa ke belakang dan seterusnya , INT boleh digunakan UNSIGNED menyimpan masa, nombor berterusan, mengambil sedikit ruang dan indeks boleh digunakan untuk meningkatkan prestasi pertanyaan. Berikut ialah contoh pernyataan penciptaan jadual dan penukaran berkaitan cap masa SQL: UNIX_TIMESTAMP()
CREATE TABLE `tb_time` ( `increment_id` int unsigned NOT NULL AUTO_INCREMENT COMMENT '自增主键', `col1` datetime NOT NULL DEFAULT '2020-10-01 00:00:00' COMMENT '到期时间', `unix_createtime` int unsigned NOT NULL COMMENT '创建时间戳', `create_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP COMMENT '创建时间', `update_time` timestamp NOT NULL DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP COMMENT '修改时间', PRIMARY KEY (`increment_id`), KEY `idx_unix_createtime` (`unix_createtime`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8 COMMENT='time测试表'; # 插入数据 insert into tb_time (unix_createtime,create_time) values (UNIX_TIMESTAMP(now()),now()); # 时间戳数字与时间相互转换 select UNIX_TIMESTAMP('2020-05-06 00:00:00') select FROM_UNIXTIME(1588694400)
Atas ialah kandungan terperinci Apakah jenis masa dalam mysql. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!