Requête de filtre MySQL entre la plage de dates

Requête de filtre MySQL entre la plage de dates
MySQL est un système de gestion de base de données populaire et facile à utiliser qui est emballé avec de nombreuses fonctionnalités et une flexibilité pour s'adapter à une large gamme de cas d'utilisation. L'une de ces fonctionnalités est le type de données de date MySQL qui est utilisé pour générer et stocker les valeurs de date.

Dans ce guide, nous vous guiderons à travers le type de données de date MySQL et vous montrerons comment vous pouvez filtrer à partir d'une gamme de date.

Bases

MySQL Date est un type de données qui stocke les valeurs de date sous la forme de Yyyy-mm-dd. Le type de date utilise 3 octets pour stocker l'enregistrement de la date. Le type de date MySQL varie de 1000-01-0 à 9999-12-21.

MySQL est emballé avec beaucoup de fonctions pour générer et manipuler les valeurs de date. Cependant, en raison de la portée du tutoriel, nous ne plongerons pas là-dedans. Considérez la documentation pour en savoir plus.

Prenons un exemple simple pour montrer comment stocker les valeurs de date dans MySQL. Considérez les requêtes suivantes.

Créer une base de données s'il n'existe pas date_db
Utiliser date_db;
Créer la table date_records (
id int Auto_increment Clé primaire,
Date horaire non nul
));
Insérer dans Date_records (horaire)
Valeurs ('2021-06-06'),
('2020-01-20'),
('2030-03-03');

Nous pouvons désormais sélectionner les valeurs dans le tableau comme:

SELECT * FROM DATE_RECORDS;
+----+------------+
| ID | Horaire |
+----+------------+
| 1 | 2021-06-06 |
| 2 | 2020-01-20 |
| 3 | 2030-03-03 |
+----+------------+
3 lignes en jeu (0.00 sec)

Vous pouvez utiliser les fonctions MySQL pour ajouter plus de valeurs de date au tableau.

Comment filtrer la plage de dates?

Passons maintenant au sujet à accomplir: «Comment filtrer dans une plage de dates?"

Mysql est intelligent et très intuitif. Vous pouvez utiliser les opérateurs de comparaison normaux pour filtrer les données dans une plage de dates spécifique.

Prenons la base de données de l'exemple de Sakila disponible dans la ressource ci-dessous:

https: // dev.mysql.com / doc / index-autre.html

Dans le tableau de paiement, nous pouvons filtrer les dates de paiement qui plaident pour une période spécifique.

Par exemple, pour filtrer les paiements qui varient entre «2005-05-25 11:30:37» et «2005-07-30 19:23:44», nous pouvons utiliser la requête ci-dessous:

Sélectionnez Payt_id, Customer_ID, Rental_id
Du paiement
Où le paiement_date entre '2005-05-25 11:30:37' et '2005-07-30 19:23:44' limite 10;

L'exemple ci-dessus doit renvoyer les colonnes où les valeurs sont entre la plage de temps spécifiée.

Un autre exemple est de filtrer les valeurs jusqu'à une date spécifique. Dans ce cas, nous pouvons utiliser moins ou égal à un opérateur comme:

Sélectionnez Payt_id, Customer_ID, Rental_id
Du paiement
Où le paiement_date <= '2005-05-25 11:30:37' LIMIT 10;

Dans l'exemple ci-dessus, la requête renvoie toutes les valeurs de la gamme de «2005-05-25 11:30:37» et ci-dessous.

Résumé

MySQL vous permet d'utiliser des opérateurs de comparaison pour filtrer les gammes de dates comme vous le feriez pour d'autres types tels que les entiers.