Bonjour à tous,
Je n'arrive pas à faire une requête qui parait simple mais qui pose problème à cause de la manière dont sont stockés les enregistrements en base de données.
J'ai une table contenant une date de début, une date de fin et la disponibilité.
Voici un exemple:
28-05-09 au 31-05-09 disponible
01-06-09 au 03-06-09 disponibe
04-06-09 au 25-06-09 indispoinble
Une personne fait une recherche de dispo du 28-05-09 au 03-06-09, la requête devrait retourner qu'il y a des disponibilités mais pas moyen car il y a 2 enregistrements stockés en base de données.
J'avais fait cette requête:
Mais évidemment ca ne fonctionne pas dans ce cas puisque 2 enregistrements sont stockées dans la DB pour cette période.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6 SELECT date_debut, date_fin, disponible FROM 'matable' WHERE '2009-5-28' BETWEEN begdate AND enddate AND '2009-6-3' BETWEEN begdate AND enddate AND disponible=1
Merci d'avance pour votre aide.
Partager