Détermination des plages de dates qui se chevauchent dans MySQL
Pour identifier les plages de dates conflictuelles dans une table donnée, envisagez une requête personnalisée qui utilise les critères suivants :
WHERE new_start < existing_end AND new_end > existing_start
où :
Cette requête identifie efficacement les plages de dates qui croisent la nouvelle session proposée , fournissant un résultat plus raffiné par rapport à la requête d'origine.
Voici une version mise à jour de la query :
SELECT * FROM session WHERE "2010-01-05" < end_date AND "2010-01-25" > start_date;
Cette requête renvoie uniquement les sessions en conflit, en omettant celles qui ne se chevauchent pas :
+----+------------+------------+ | id | start_date | end_date | +----+------------+------------+ | 2 | 2010-01-20 | 2010-01-30 | +----+------------+------------+
La requête révisée garantit que seules les sessions qui se chevauchent sont identifiées, fournissant ainsi un résultat plus précis pour détection de conflits.
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!