簡體   English   中英

mysql聯接2個表從同一個表中獲得2個不同的值

[英]mysql joining 2 tables getting 2 different values from the same table

我有2張桌子想加入...

表“用戶”:

列:

uid =>用戶索引

名稱=>用戶名


表“消息”:

列:

fromid =>發送者用戶索引

toid =>接收者用戶索引

信息=>短信


我想要這樣的輸出: from_username | to_username | 留言|

我可以得到 from_username | 留言| 與此查詢:

SELECT messages.message, users.name FROM messages,users WHERE messages.fromid = users.uid;

您需要完成兩次連接:

Select f.name, t.name, message from messages
Left join users as f on messages.fromID = f.uid
Left join users as t On messages.toid = t.uid

對於完整的連接語法(和一些解釋),MySQL doc頁面還不錯http://dev.mysql.com/doc/refman/5.0/en/join.html

嘗試

 SELECT sender.name, receiver.name, message
 FROM messages
 INNER JOIN users sender
 ON messages.fromid = sender.uid
 INNER JOIN users receiver
 ON messages.toid = receiver.uid

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM