私はホテルを持っており、所定の時間に撮影されない部屋を見ることができるフォームを作成する必要があります。
シングルBookinsは、SQLデータベーステーブルに保存されます。
room start end
1 2017-09-01 2017-09-10
2 2017-09-12 2017-09-15
1 2017-09-01 2017-09-10
今私は、顧客がために2017年9月10日から2017年9月11日に部屋を得ることができ、すべての部屋を、必要とします例。
私のようなSQLクエリの構築を試みた:
SELECT * FROM rooms WHERE room_id NOT IN (
SELECT room_id FROM bookings WHERE start <= #startTime# AND end >= #endTime#
)
をしかし、結果は信頼できるものではありません。私はこれを最初に尋ねる人ではないと思うが、Google博士と何の情報も見つけられない。
古い方法 – Sami
@Samiは内部結合を使って答えを編集しました。 –