2011-09-19 64 views
0

我想在我的Hotel management項目中加入2個或更多表格,那麼連接表格的步驟是什麼? 是否有必要在每個表中爲我們需要加入或不加外鍵的工作提供外鍵?在php-mysql中加入2個或更多表格

+0

你的問題不是很清楚......你能更全面地描述情況嗎?你想要合併哪兩張表,以及預期的結果是什麼? –

+0

我創建了以下表 - 1)獲分配 2)做客 3)菜單 4)ordersfood 5)室6)退房 – Max

+0

你想加入和什麼方式什麼表? –

回答

0

不,您不需要專門使用外鍵,儘管您可能會使用相同的外鍵。 (注意,默認引擎MyISAM不支持外鍵,如果你想使用它們,使用InnoDB或$ otherEngine)。

對於連接,我建議閱讀the documentation on joins

+0

感謝您的回覆。 – Max

1

的步驟是:

  1. JOIN查詢。你完成了!

您可以JOIN使用既不是主鍵也不是外鍵的列。例如,

select * 
from (select 'x' as a) t1 
inner join (select 'x' as a) t2 on t1.a = t2.a 

查詢有一個JOIN子句和ON條款。 JOIN條款說what type of JOIN它是哪個表和JOIN編輯。 ON子句指定將哪些列設置爲JOIN

+0

感謝回答當然,所有的客人不會點菜的 – Max

+0

,所以這些表將需要與左接合加入。 – HLGEM

0

簡單連接,無冗餘ID輸出:

SELECT * FROM foo JOIN bar USING(id);

假設id列在兩個表中都被定義爲主鍵,因此創建了要連接的表之間的關係。

但是,根據您擁有的標準和要求,有不同類型的連接(自然,直線,左,右)。查看MySQL API手冊,它會爲您提供足夠的信息。

-1

我認爲你的情況(如上文所述),創建一個PHP文件來分別爲每個表獲取客戶數據會更有意義,至少對我來說似乎是JOINing 6表格在一起將會非常麻煩,並且不能以實際的方式非常有效。