
换为 2001~2069 和 1970~1999 范围的 YEAR 值。注意,在这里 0 值将被转
换为 0000,而不是 2000。
注意:两位整数范围与两位字符串范围稍有不同。
示例
创建测试表
CREATE TABLE t14(
id INT AUTO_INCREMENT PRIMARY KEY,
created_year YEAR NOT NULL
);
使用 4 位数年份插入一行
INSERT INTO t14 (created_year) VALUES (2023);
使用 2 位数年份插入 2 行
INSERT INTO t14 (created_year) VALUES (23), (99);
再插入一个 0 值:
INSERT INTO t14 (created_year) VALUES (0), ('0');
查询表中的数据
mysql> SELECT * FROM t14;
+----+--------------+
| id | created_year |
+----+--------------+
| 1 | 2023 |
| 2 | 2023 |
| 3 | 1999 |
| 4 | 0000 |
| 5 | 2000 |
+----+--------------+
5 rows in set (0.00 sec)
可以看出,数字 0 转换为了 0000,而字符串 '0' 转换为了 2000。
TIME 类型
TIME 类型用于存储时间信息的值,在存储时需要 3 个字节。格式为 HH:MM:SS。HH 表示
小时,MM 表示分钟,SS 表示秒。
TIME 类型的取值范围为 -838:59:59~838:59:59,小时部分如此大的原因是 TIME 类
型不仅可以用于表示一天的时间(必须小于 24 小时),还可能是某个事件过去的时间或两个
事件之间的时间间隔(可大于 24 小时,或者甚至为负)。
示例
创建测试表 t15
create table t15 (t time);
用 now()函数插入当前日期时间
insert into t15 values(now());
查看显示结果
评论