Maison > base de données > tutoriel mysql > Comment sélectionner les données de ventes de produits dans une plage de dates spécifique à l'aide de SQL ?

Comment sélectionner les données de ventes de produits dans une plage de dates spécifique à l'aide de SQL ?

Susan Sarandon
Libérer: 2025-01-05 12:30:41
original
1012 Les gens l'ont consulté

How to Select Product Sales Data Within a Specific Date Range Using SQL?

Sélection de données à partir d'une plage de dates comprise entre deux dates

Étant donné un tableau nommé Product_Sales contenant des données sur les ventes de produits, y compris Sold_by, Qty, From_date , et To_date, nous recherchons une requête pour récupérer les données de ventes dans une plage de dates spécifique. Par exemple, nous visons à sélectionner des données du 3 janvier 2013 au 9 janvier 2013.

Pour commencer, nous observons que toute date dans la plage cible croise les dates From_date et To_date d'une ligne ou se situe entièrement en dehors des deux frontières. Par conséquent, nous recherchons une requête qui renvoie les lignes qui remplissent cette condition.

Une approche consiste à identifier tous les intervalles valides (ceux où la plage cible chevauche l'intervalle de la ligne) et à exclure tous les intervalles non valides. À cette fin, nous pouvons utiliser la requête suivante :

SELECT * FROM Product_Sales 
WHERE NOT (From_date > @RangeTill OR To_date < @RangeFrom)
Copier après la connexion

où @RangeTill est la limite supérieure de la plage cible (incluse) et @RangeFrom est la limite inférieure (incluse). Cette requête exploite le fait que les intersections d'intervalles dans le cas non exclu satisferont la condition suivante :

  • La plage cible ne s'étend pas au-delà de la date de début de la ligne.
  • La date de fin de la ligne le fait ne s'étend pas au-delà de la plage cible.

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 de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn
Derniers articles par auteur
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal