Afficher tous les enregistrements en ignorant l'enregistrement de la date actuelle dans MySQL
Créons d'abord un tableau :
mysql> create table DemoTable
-> (
-> Name varchar(100),
-> DueDate datetime
-> );
Query OK, 0 rows affected (0.54 sec)
Insérez quelques enregistrements dans la table à l'aide de la commande insert. Disons que la date actuelle est le « 05/07/2019 » :
mysql> insert into DemoTable values('Chris','2019-06-24');
Query OK, 1 row affected (0.12 sec)
mysql> insert into DemoTable values('Chris','2018-01-01');
Query OK, 1 row affected (0.13 sec)
mysql> insert into DemoTable values('Robert','2019-07-05');
Query OK, 1 row affected (0.21 sec)
mysql> insert into DemoTable values('Carol','2019-08-03');
Query OK, 1 row affected (0.22 sec)
Affichez tous les enregistrements de la table à l'aide de l'instruction select :
mysql> select *from DemoTable;
Sortir
+--------+---------------------+
| Name | DueDate |
+--------+---------------------+
| Chris | 2019-06-24 00:00:00 |
| Chris | 2018-01-01 00:00:00 |
| Robert | 2019-07-05 00:00:00 |
| Carol | 2019-08-03 00:00:00 |
+--------+---------------------+
4 rows in set (0.00 sec)
Voici la requête pour sélectionner toutes les lignes sauf celles d'aujourd'hui :
mysql> select *from DemoTable where date(DueDate) !=curdate();
Cela produira la sortie suivante affichant les enregistrements ignorant l'enregistrement de la date actuelle :
Sortir
+-------+---------------------+
| Name | DueDate |
+-------+---------------------+
| Chris | 2019-06-24 00:00:00 |
| Chris | 2018-01-01 00:00:00 |
| Carol | 2019-08-03 00:00:00 |
+-------+---------------------+
3 rows in set (0.00 sec)