Maison  >  Article  >  base de données  >  Gérer des dates antérieures à 1970 dans MySQL ?

Gérer des dates antérieures à 1970 dans MySQL ?

王林
王林avant
2023-08-31 09:25:021407parcourir

在 MySQL 中处理 1970 年之前的日期?

Vous devez utiliser le type date pour gérer les dates antérieures à 1970 car les dates stockent des valeurs de 1000 à 9999. Le type date peut être utilisé lorsque vous devez uniquement gérer la partie date et non à des fins temporelles.

MySQL donne les données au format suivant. Le format est le suivant -

‘YYYY-MM-DD’

La plage de dates de début est la suivante -

1000-01-01

La plage de dates de fin est la suivante -

9999-12-31

Pour comprendre ce dont nous avons discuté ci-dessus, créons deux tableaux. La requête pour créer la première table est la suivante -

mysql> create table DateDemo
   -> (
   -> Id int NOT NULL AUTO_INCREMENT PRIMARY KEY,
   -> DateBefore1970 date
   -> );
Query OK, 0 rows affected (0.71 sec)

Vous pouvez maintenant insérer certains enregistrements dans la table à l'aide de la commande insert. Chaque fois que vous utilisez une date au-delà de la fin du « 9999-12-31 », vous obtenez une date de « 0000-00-00 ».

Insérons un enregistrement supérieur à « 9999-12-31 ». La requête est la suivante -

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)

Vous pouvez maintenant utiliser l'instruction select pour afficher tous les enregistrements de la table. La requête est la suivante -

mysql> select *from DateDemo;

Ce qui suit est le résultat -

+----+----------------+
| 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)

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Cet article est reproduit dans:. en cas de violation, veuillez contacter admin@php.cn Supprimer