0

ホテルというテーブルがあり、これがスキーマです

tables(type, id, name, description, menu, address)

タイプ、ID、名前、説明、アドレスを簡単に保存できます。それらはすべて文字列と整数です。

それぞれ異なる値を持つ約 100 のホテルがあるとします。

でもメニューは?どうすればそれを保存できますか? メニューは次のようになります。

Pasta : 10 euros
HamBurger : 5 euros
#similarly many items in the menu

誰か保存方法教えてください。詳しく説明してみてください。私はそれをまったく得ていません。ホテルのIDを外部キーとして別のテーブルにメニューを保存しようとしましたが、メニューのためだけに100個のテーブルを書くことになります。

4

3 に答える 3

1

考えられるすべてのメニュー(「パスタ」、「ハンバーガー」など)のテーブルを作成し、2番目のテーブルでそれらをホテルにリンクすると思います

例: menus (menu_id, name, price) hotels_menus (hotel_id, menu_id)

特定のホテルのすべての料理を検索するには、「SELECT m.name, m.price FROM hotel_menus AS hm INNER JOIN menus AS m ON hm.hotel_id = [hotel_id] AND hm.menu_id = m.menu_id」で取得します

ホテルごとに価格が異なる場合は、価格フィールドを hotels_menus テーブルに移動します。

于 2013-08-13T12:10:19.800 に答える
0

実際には、前菜、メイン コースなどのカテゴリ フィールドも必要です。

于 2020-06-05T13:13:42.883 に答える