Rechercher entre deux plages de dates
P粉884548619
P粉884548619 2024-04-03 11:56:15
0
1
525

Je développe un système de location de voitures où les gens peuvent réserver une voiture sur cette page.

J'ai donc besoin de savoir comment effectuer une recherche en utilisant la plage de dates du client (location et retour) à partir du formulaire de réservation.

J'ai ce tableau :

CREATE TABLE `autos_bookings` (
  `id` int(11) NOT NULL,
  `booking_id` int(11) NOT NULL DEFAULT '0',
  `auto_id` int(11) NOT NULL DEFAULT '0',
  `date_out` datetime NOT NULL DEFAULT '0000-00-00 00:00:00',
  `date_return` datetime NOT NULL DEFAULT '0000-00-00 00:00:00'
) ENGINE=InnoDB DEFAULT CHARSET=utf8;

ALTER TABLE `autos_bookings`
  ADD PRIMARY KEY (`id`);

ALTER TABLE `autos_bookings`
  MODIFY `id` int(11) NOT NULL AUTO_INCREMENT;

Donc, ce que je veux faire, c'est avoir une autre plage de dates (par exemple, disons : $dateclientewantsrent$dateclientewantsreturn) et rechercher dans cette table toutes les réservations existantes.

SELECT * FROM `autos_bookings` WHERE SOMETHING

P粉884548619
P粉884548619

répondre à tous(1)
P粉118698740

Deux plages se chevauchent lorsque chaque point de début de plage est plus petit que le point final de plage opposé. C'est

...
WHERE booking.date_out 

Selon la logique, une ou les deux comparaisons peuvent être faibles.

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal