2010-03-27 151 views
3

我有一個名字存儲在一個表中,姓氏存儲在另一個表中。我知道這很愚蠢,但我正在嘗試不同的事情,因爲我剛開始使用MySQL。無論如何,有可能在一個查詢中選擇一個表中的名字和另一個名字中的另一個名字?並把結果放在一個PHP變量中?如何從一個MySQL查詢中的兩個不同表中選擇記錄?

回答

5

您必須擁有將兩個表格綁定在一起的東西,這是常見的key。喜歡的東西Id在下面的例子:

Table 1 

Id Fname 
-------- 
1 Roger 
2 Pete 

Table 2 

Id Lname 
-------- 
1 Federer 
2 Sampras 

在這種情況下,你可以得到全名:

SELECT Fname, Lname from T1,T2 where T1.Id = T2.Id; 
+1

+1的答案。這就是數據庫術語中所謂的「外鍵」。一個跨表連接記錄的關鍵值。 – Faisal 2010-03-27 15:03:21

+2

使用JOIN子句的顯式連接通常優於使用WHERE子句的隱式連接,因爲您將連接條件與篩選條件分開,這通常會導致更具可讀性的SQL。 – 2010-03-27 15:09:38

+0

+1爲我的最愛運動:D – nawfal 2012-01-12 20:51:56

0

使用joins

SELECT firstName, lastName 
FROM Table1, Table2 
WHERE (Table1.id = Table2.id) 
0
select table1.firstname, table2.lastname from table1, table2 
    where table1.id = table2.id 

here瞭解更多信息。

充分加入

如果從用逗號分隔的名字子句,MySQL會執行完整的SELECT語句名稱的多個表的連接。

相關問題