MySQL支持多种日期和时间类型,每种类型都适用于不同的情境。下面是MySQL支持的日期和时间类型:
-
DATE:日期类型,格式为YYYY-MM-DD。它用于存储日期信息,例如出生日期、应收账单日期等。
-
TIME:时间类型,格式为HH:MM:SS。它用于存储时刻信息,例如开门时间、开机时间等。
-
DATETIME:日期时间类型,格式为YYYY-MM-DD HH:MM:SS。它是DATE和TIME的组合,用于存储同时具有日期和时间信息的数据,例如创建时间、更新时间等。
-
TIMESTAMP:时间戳类型,格式为YYYY-MM-DD HH:MM:SS。它与DATETIME类似,但存储的是绝对时间,即自1970年1月1日格林威治标准时间(UTC)以来的秒数。
-
YEAR:年份类型,格式为YYYY。它用于存储年份信息,例如毕业年份、公司成立年份等。
下面是日期类型的使用示例:
DATE使用示例:存储订单创建日期
CREATE TABLE orders (
id INT PRIMARY KEY AUTO_INCREMENT,
order_date DATE NOT NULL
);
INSERT INTO orders (order_date) VALUES ('2021-10-02');
TIME使用示例:存储提取时间
CREATE TABLE whiskeys (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(50) NOT NULL,
distill_time TIME NOT NULL
);
INSERT INTO whiskeys (name, distill_time) VALUES ('Lagavulin', '11:00:00');
DATETIME示例:存储日志时间
CREATE TABLE logs (
id INT PRIMARY KEY AUTO_INCREMENT,
message TEXT NOT NULL,
log_time DATETIME NOT NULL
);
INSERT INTO logs (message, log_time) VALUES ('Server started', '2021-10-02 09:00:00');
TIMESTAMP示例:存储用户最后登录时间
CREATE TABLE users (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(50) NOT NULL,
last_login TIMESTAMP DEFAULT CURRENT_TIMESTAMP ON UPDATE CURRENT_TIMESTAMP
);
INSERT INTO users (name) VALUES ('Alice');
YEAR示例:存储毕业年份
CREATE TABLE students (
id INT PRIMARY KEY AUTO_INCREMENT,
name VARCHAR(50) NOT NULL,
graduation_year YEAR NOT NULL
);
INSERT INTO students (name, graduation_year) VALUES ('Bob', '2022');
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:详解MySQL日期和时间类型的使用方法 - Python技术站