Rumah  >  Soal Jawab  >  teks badan

Cari antara dua julat tarikh

Saya sedang membangunkan sistem penyewaan kereta di mana orang ramai boleh menempah kereta di halaman ini.

Jadi saya perlu tahu cara mencari menggunakan julat tarikh pelanggan (sewa dan pulang) dari borang tempahan.

Saya ada meja ini:

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;

Jadi, apa yang saya mahu lakukan ialah mempunyai julat tarikh lain (cth, katakan: $dateclientewantsrent$dateclientewantsreturn) dan cari jadual itu untuk sebarang tempahan sedia ada.

SELECT * FROM `autos_bookings` WHERE SOMETHING

P粉884548619P粉884548619180 hari yang lalu424

membalas semua(1)saya akan balas

  • P粉118698740

    P粉1186987402024-04-04 10:41:43

    Dua julat bertindih apabila setiap titik mula julat adalah lebih kecil daripada titik akhir julat yang bertentangan. Itulah

    ...
    WHERE booking.date_out < $date_cliente_wants_rent
      AND $date_cliente_wants_return < booking.date_return
    ...

    Bergantung kepada logik, satu atau kedua-dua perbandingan mungkin lemah.

    balas
    0
  • Batalbalas