それで、私はホテルで機能するWebアプリケーションを設計しており、最終的には、いくつかの追加コードを使用して、すべてのホテルWebサイトに簡単にインストールできるようになるはずです。アプリケーションはphpとmysqlで動作しています。ですから、おそらくご想像のとおり、私はデータベース構造とかなり混乱しています。しかし、私はいくつかの調査を行い、予約のための本格的なシステムを求めているだけではありません。
そのため、ホテルの所有者は多くのタイプの部屋を持っている必要があります。ですから、おそらく部屋のテーブルは「必須」だと思います。どうぞ:
---------- Rooms Table (example)
ID NAME ADULTS ROOM_COUNT PRICE/NIGHT
1 DoubleRoom 2 5 45$
2 Family 3 2 75$
3 Single 1 3 35$
これは非常に簡単です。私のアプリケーションを介して部屋を追加することができます。また、各部屋の適切な説明とさまざまな画像を添付します。しかし、要点に戻りましょう。人々はそう予約する必要があります...
---------- Bookings Table (example)
ID ROOM_ID BOOKING_USER CHECKIN (timestamp) CHECKOUT (timestamp)
1 2 A full name 208420842042 308230482042824
2 3 A full name 208423242525 529752972595272
...
つまり、これは-うまくいけば-データベース構造です。今、私は可用性をチェックする方法を考えています。ばかげているように聞こえるかもしれませんが、賢くて簡単な方法がわかりません。ウェブサイトの形式では、次のフィールドがあるはずです:check-in date
そして、check-out-date
それはタイムスタンプに変換されますそして..さて、これが私が立ち往生した時間です!
上記のテーブルしかない場合、どうすれば空室状況を確認できますか。データベース構造を変更する方法はありますか、または変更する必要がありますか?空室状況を確認しても、部屋の総数(ROOM_COUNT
)はどうしてカウントされるのですか?つまり、複数のタイプの部屋の空室状況を確認するにはどうすればよいですか?私は次のようなことを考えました:
SELECT count(ROOM_ID) FROM bookings WHERE
bookings.checkin < DATE_GIVEN_AS_CHECKIN_INPUT and
bookings.checkout > DATE_GIVEN_AS_CHECKOUT_INPUT
次に、このクエリの出力に応じて、利用可能な部屋があるかどうかがわかります。しかし、部屋数はどうですか?より良い方法はありますか?
ここの誰かがこれについて私に教えてくれたら本当にうれしいです。これを読んでもよろしくお願いします!
ブレーン
PSああ、それは宿題ではありません!:PIはとにかく学校に行かない:D