2014-02-21 94 views
0

我有一個數據庫問題,我想設計一個旅遊數據庫。他們保持跟蹤 訪問者,門票和他們訪問的景點(例如宮殿或本地節目)。我們假設每個遊客都必須購買一張票才能進入遊覽。特定查詢的關係數據庫設計結構

每張票只有一天有效,並且沒有兒童或家庭等的特殊票。但是有幾種票,特別是金,銀和銅票。黃金票價更貴,但隨後大部分旅遊景點都是免費的,或者至少價格相當便宜的
。對於Silver和Bronze門票,大部分景點可能需要額外收費。因此,打算花一整天時間儘可能多地乘坐遊樂設施的人可能想要購買一張金票,而其他人則最好使用銀票或銅票。

機票價格以及每個機票類別的每個景點的額外費用可能取決於季節,並可能隨時間而改變。因此,2013年春假期間可能會有一套價格,而在2013年夏季高峯期間,可能會有另一套價格。每個景點都有獨特的名稱(例如,玻璃博物館或金礦),並且每當訪問者訪問景點時,數據庫應該存儲關於訪問者持有的票的信息以及關於訪問者何時進入景點的信息。

Visitors 
(v_id,visitor_name) 

Ticket_purchase 
(v_id,t_id,date) 

Tickets 
(t_id,class,price,season) 

Attractions 
(t_id,attraction_name,goldextracost,silverextracost,bronzeextracost) 

Attraction_visited 
(v_id,t_id,attraction_name,datetime) 

現在,如果我要輸出的誰買了青銅票,但(誰又能節省錢,如果他們買了一個金票,因爲他們參觀了很多景點,他們不得不在支付額外的人數那天)

是否可能與上述表格或我需要一些結構變化?

回答

0

我想你有你需要的信息。您正在記錄顧客訪問景點時使用的機票,並且通過該數據您可以獲得機票類,並計算他們訪問具有不同類別機票的景點時的成本。

0
從我所看到的你覆蓋的機票價格,當你改變它...

因爲這個你不能回頭看不同的門票價格...我undrstand機票價格可以改變 你將不得不增加門票是創建新價格時的日期字段。那麼你不會刪除舊的票價。只是拉最新的。 以及其他與價格相同的東西...您無法覆蓋它..只需添加開始日期...

當您準備好查看該人花費多少時,您可以看到他們花了多少錢在他們的門票和景點...

一旦你這樣做,你想要的將是可能的。

+0

現在我有一套固定的門票。我的意思是我不會爲每個訪客產生不同的票。它像2013年春季的黃金季節票號1一樣,其基本成本爲40美元,銀和銅牌也是如此。我已經完成了大部分的季節,並沒有包含日期​​。但我認爲我必須這樣做。 – user3338588

+0

是的,但如果2013年的青銅票價爲40美元,而2014年的青銅票價爲50美元,則每票價格必須有startDate。 ex。景點 (t_id,attraction_name,goldextracost,silverextracost,bronzeextracost,startDate) – Ishey4

+0

等待我可能會錯我的理解你的結構 它也似乎你也可以結合購票和票... 我很難過了解你的結構..你可以請嘗試解釋它好一點嗎? – Ishey4