在MySQL中,時間通常以ISO 8601的格式進行存儲和顯示。ISO 8601要求時間以"YYYY-MM-DDTHH:MM:SS"的格式表示,并且時間中加入了一個大寫字母"T",用于區(qū)分日期和時間。
CREATE TABLE `example` ( `id` int(11) NOT NULL AUTO_INCREMENT, `datetime` datetime NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; INSERT INTO `example` (`datetime`) VALUES ('2022-01-01T12:00:00'), ('2022-01-02T12:00:00');
在MySQL中,帶有"T"的時間可以與沒有"T"的時間進行比較和轉(zhuǎn)換。以下是使用帶有"T"的時間進行查詢的示例:
SELECT * FROM `example` WHERE `datetime` >= '2022-01-01T00:00:00' AND `datetime`< '2022-01-02T00:00:00';
如果您想在MySQL中存儲不帶"T"的日期和時間,請使用DATE類型和TIME類型。以下是示例:
CREATE TABLE `example2` ( `id` int(11) NOT NULL AUTO_INCREMENT, `date` date NOT NULL, `time` time NOT NULL, PRIMARY KEY (`id`) ) ENGINE=InnoDB DEFAULT CHARSET=utf8mb4; INSERT INTO `example2` (`date`, `time`) VALUES ('2022-01-01', '12:00:00'), ('2022-01-02', '12:00:00');
總之,在使用MySQL處理時間數(shù)據(jù)時,請一定要了解ISO 8601和UTC時間的相關(guān)知識,并正確處理帶有"T"的時間。