Table_Users
id username
1 Jack
2 Marine
3 Katie
4 Hennry
Table_Messages
id to_id from_id Messages
1 2 3 Hello
2 3 2 Hi
需要,可以返回一個信息,要姓名和名稱可以返回一個信息,要姓名和名稱單查詢
Table_Users
id username
1 Jack
2 Marine
3 Katie
4 Hennry
Table_Messages
id to_id from_id Messages
1 2 3 Hello
2 3 2 Hi
需要,可以返回一個信息,要姓名和名稱可以返回一個信息,要姓名和名稱單查詢
你需要加入表users
上表messages
單查詢兩次,因爲您需要獲得to
和from
用戶的等效名稱。
SELECT a.id,
b.`username` TO_NAME,
c.`username` FROM_NAME,
a.Messages
FROM tbl_Messages a
INNER JOIN users b
on a.to_ID = b.id
INNER JOIN users c
on a.from_ID = c.id
下面是查詢:
選擇消息作爲消息,(選擇從table_users其中id = to_id用戶)作爲 「從名稱」,(從table_users選擇用戶其中id = from_id)作爲來自table_messages的「To Name」;
這裏是另一種方式,它也會產生與上面解釋的結果相同的結果。 – Vikki
偉大的,我試過了,工作正常,但是這是做到這一點的最佳方式,或者可以有不同的語法呢? – Vikki
到目前爲止,我可以說這是最有效的解決方案。還有其他解決方案,您可以從子查詢中獲取效率低於此值的值。 :D –
嗨,我看到你是新來的SO。如果您覺得答案可以解決問題,請點擊綠色複選標記將其標記爲「已接受」。這有助於將注意力集中在仍然沒有答案的舊版SO上。 :D –