您需要使用日期类型来处理 1970 年之前的日期,因为日期存储的值是从 1000 到 9999。当您仅需要处理日期部分而不是出于时间目的时,可以使用日期类型。
MySQL 给出以下格式的数据。格式如下 -
‘YYYY-MM-DD’
登录后复制
开始日期范围如下 -
1000-01-01
登录后复制
结束日期范围如下 -
9999-12-31
登录后复制
为了理解我们上面讨论的内容,让我们创建两个表。创建第一个表的查询如下 -
mysql> create table DateDemo
-> (
-> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
-> DateBefore1970 date
-> );
Query OK, 0 rows affected (0.71 sec)
登录后复制
现在您可以使用插入命令在表中插入一些记录。每当您使用超出结束日期“9999-12-31”时,您都会得到一个日期“0000-00-00”。
让我们插入一条大于“9999-12-31”的记录'。查询如下 -
mysql> insert into DateDemo(DateBefore1970) values('1000-10-20');
Query OK, 1 row affected (0.17 sec)
mysql> insert into DateDemo(DateBefore1970) values('1940-12-31');
Query OK, 1 row affected (0.20 sec)
mysql> insert into DateDemo(DateBefore1970) values('1500-01-25');
Query OK, 1 row affected (0.10 sec)
mysql> insert into DateDemo(DateBefore1970) values('1900-04-14');
Query OK, 1 row affected (0.12 sec)
mysql> insert into DateDemo(DateBefore1970) values('1710-11-15');
Query OK, 1 row affected (0.17 sec)
mysql> insert into DateDemo(DateBefore1970) values('9999-12-31');
Query OK, 1 row affected (0.22 sec)
mysql> insert into DateDemo(DateBefore1970) values('10000-12-31');
Query OK, 1 row affected, 1 warning (0.11 sec)
登录后复制
现在您可以使用 select 语句显示表中的所有记录。查询如下 -
mysql> select *from DateDemo;
登录后复制
以下是输出 -
+----+----------------+
| Id | DateBefore1970 |
+----+----------------+
| 1 | 1000-10-20 |
| 2 | 1940-12-31 |
| 3 | 1500-01-25 |
| 4 | 1900-04-14 |
| 5 | 1710-11-15 |
| 6 | 9999-12-31 |
| 7 | 0000-00-00 |
+----+----------------+
7 rows in set (0.00 sec)
登录后复制
以上就是在 MySQL 中处理 1970 年之前的日期?的详细内容,更多请关注每日运维网(www.mryunwei.com)其它相关文章!