2013-06-24 50 views
0

我對編碼有點新,並且一直在努力編寫我認爲是一個簡單的sql查詢。請幫助:)Php mysql根據來自另一個表的ID在一行中查詢兩個用戶名

Table 1: Users 
id = user idt 
username = user name 

Table 2: Orders 
orderid = order id 
order_to = user id of person buying 
order_from = user id of person selling 
oder_details = text 

基本上我想:

"Select Username(from), Username(to), order_details FROM mytables WHERE Order id = 1;" 

並得到結果爲1排,我不知道如何着手。我想我可以通過串接或其他方式來做到這一點......任何人都可以幫忙嗎?

+0

基本上我想:''什麼什麼 – vikingmaster

+0

你想幹什麼? – KyleK

+0

他正在嘗試連接表並獲取由訂單表中的ID定義的用戶名。 –

回答

7

您需要使用JOIN將這些錶鏈接在一起。

​​

因爲你有你需要從用戶名兩個不同的用戶,則需要JOIN用戶表兩次,同時獲得用戶的用戶名。每個表都需要有它自己的別名futu,讓MySQL來區分它們。這同樣適用於列名在SELECT語句,這樣,當你取得與PHP的結果,PHP可以在兩個用戶名進行區分。

+0

非常感謝,我曾嘗試加入,但顯然我的邏輯是有缺陷的:)我真的很感激它! –

+0

@Newcoder爲我的答案添加了一個簡短的解釋。 –

1

您正在查找JOIN。這可以通過關鍵字或通過WHERE子句完成。例如,

SELECT * FROM Orders JOIN Users ON Orders.order_to=Users.id 

該文檔可以在這裏找到:http://dev.mysql.com/doc/refman/5.0/en/join.html

我會把它作爲練習來弄清楚如何JOINorder_from

相關問題