在 MySQL 中处理 1970 年之前的日期?
您需要使用日期类型来处理 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”的记录'。查询如下 -
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)登录后复制
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)登录后复制