'soir
Je me prend la tête sur une requête de réservation hôtelière Explications :
- Selon deux colonnes date_debut et date_fin pouvoir vérifier si une chambre donnée peut être réservée selon une période.
- Les arrivées (date_debut) se font après midi et les départs (date_fin) avant midi.
- Une chambre peut être réservée pour la journée ou quelques heures ce qui donne dans la base pour la journée du 10 juillet 2009 date_debut : 2009-07-10 et date_fin : 2009-07-10.
Pour infos mais ça ne sert pas à grand chose, voila ce que j'ai actuellement et qui en fonctionne pas correctement :
Code :
- SET @var_date_debut = '2009-05-23';
- SET @var_date_fin = '2009-05-25';
- SELECT *
- FROM `reservations`
- WHERE `chambre` =26
- AND (
- @var_date_debut
- BETWEEN reservations.date_debut
- AND reservations.date_fin
- OR @var_date_fin
- BETWEEN reservations.date_debut
- AND reservations.date_fin
- OR reservations.date_debut
- BETWEEN @var_date_debut
- AND @var_date_fin
- OR reservations.date_fin
- BETWEEN @var_date_debut
- AND @var_date_fin
- )
- AND (
- (
- @var_date_fin != date_debut
- AND (
- @var_date_debut != date_debut
- AND @var_date_fin != date_fin
- )
- )
- XOR (
- (
- (@var_date_debut = date_debut
- AND @var_date_fin = date_fin) xor @var_date_debut = date_debut
- )
- )
- )
|
please need help
---------------
GENERATION MOBILES : Imprimantes GSM & logos/sonneries/jeux