MySQL et chevauchement de 2 périodes - SQL/NoSQL - Programmation
Marsh Posté le 27-03-2007 à 09:35:05
le format xxxx-xx-xx c'est ISO chaispucombien, qui est aussi celui utilisé par la norme XML, pas le format "Date MySQL"...
qu'entends-tu par chevaucher ?
y'a 4 cas différents de chevauchement : (et du coup, t'as la solution à ton problème, il ne reste plus qu'à transcrire)
Intervals A et B :
A contient B
B contient A
A ne contient que la date de début de B
A ne contient que la date de fin de B
tu veux détecter les 4 cas ? tu veux savoir les différencier ?
Marsh Posté le 27-03-2007 à 09:36:50
(pour détecter les 4 cas, c'est simple : tu dois vérifier si au moins une date d'un des deux intervals est comprise dans l'autre interval)
Marsh Posté le 27-03-2007 à 09:56:33
Par chevauchement j'entends :
Soit 2 périodes :
A : 01/01/2007 - 01/08/2007
B : 02/03/2007 - 31/09/2007
Soit A déjà stocké en base de donnée. Je voudrais tester si la période B que je veux sauvegarder chevauche uen autre période dans la table (ici A). Dans le cas présent, B chevauche A donc je dois refuser l'ajout
Marsh Posté le 27-03-2007 à 09:57:34
donc, c'est les 4 cas que tu veux tester, et dans ce cas, t'as la solution au poste précédent
Marsh Posté le 27-03-2007 à 09:27:25
Bonjour,
Je me tourne vers vous ayant quelques difficultés pour comparer 2 périodes. Je m'explique :
J'utilise MySQL comme SGBD et PHP pour la partie programmation.
Dans cette base de données, j'ai une table (table_X) qui a 3 champs :
- id (type int)
- datedebut (type date)
- datefin (type date)
Je récupère via une page PHP 2 champs au format "Date MySQL" (soit xxxx-xx-xx)
Je voudrais savoir si dans ma table il existe déjà cette période (facile) ou bien si cette période n'en chevauche pas une autre (plus compliqué) déjà présente dans ma base.
Est-ce que quelqu'un pourrait me donner un coup de main ?
Merci à tous