0

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

表“用户”:

列:

uid => 用户索引

名称 => 用户名


表“消息”:

列:

fromid => 发件人用户索引

toid => 接收者用户索引

消息 => 短信


我想要这样的输出:| 来自用户名 | to_username | 留言 |

我能得到 | 来自用户名 | 留言 | 使用此查询:

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

2 回答 2

1

您需要完成两次加入:

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 文档页面还不错http://dev.mysql.com/doc/refman/5.0/en/join.html

于 2013-10-14T23:41:59.617 回答
0

尝试

 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
于 2013-10-14T23:49:45.750 回答