Interval entre deux date ou timestamp

Eléphant du PHP | 71 Messages

05 déc. 2006, 03:41

voici la requete que j'ai pu construire grace à vous :

Code : Tout sélectionner

SELECT idrdv FROM rdv WHERE ((($debut between debut AND fin) AND ($fin between debut AND fin)) || (($debut between debut AND fin) AND ($fin not between debut AND fin)) || (($debut not between debut AND fin) AND ($fin between debut AND fin))) AND (($debut != fin) && $fin != debut)
elle permet de tester les cas suivant :

Code : Tout sélectionner

enregistré |---------| a enregistrer |---------| enregistré |---------| a enregistrer |---------| enregistré |--------| a enregistrer |-------------| enregistré |-------------| a enregistrer |--------| enregistré |---------| a enregistrer |--------| enregistré |---------| a enregistrer |--------|
vous avez reponse à tout, merci encore !

ViPHP
ViPHP | 1961 Messages

05 déc. 2006, 08:25

Bonjour,

Je te conseillerais de bien séparer les variables PHP du reste de la requête
Exp.
$requete = 'SELECT idrdv FROM rdv WHERE
(((' . $debut . ' between debut AND fin) AND (' . $fin . ' between debut AND fin)) ||
((' . $debut. ' between debut AND fin) AND (' . $fin . ' not between debut AND fin)) ||
((' . $debut. ' not between debut AND fin) AND (' . $fin . ' between debut AND fin))) AND
((' . $debut. ' != fin) && ' . $fin . ' != debut)';
Deux choses sont infinies, l'Univers et la sottise humaine!!
Mais je ne suis pas sur de ce que j'affirme au sujet de l'Univers.

A. Einstein