我可能有点笨,希望有人能提供帮助。
我有一个简单的 2 列用户表(ID、USERNAME)。
我有一个图像评论表(COMMENT、COMMENTFROM、COMMENTTO)
COMMENTFROM 是发表评论的用户的 ID。 COMMENTTO 是添加评论的图像所有者的 ID。两个用户都保存在 USERS 表中。
我想拉出并显示这样的行
"really nice photo" - to USERXYZ - from USER123**
这让我感到困惑,因为如果我将 USERS 表加入到评论表中:
WHERE comments.userfrom = users.id
这只会让我获得每行所需的 2 个用户名中的一个(或另一个)。有没有办法让我同时获得两者?
我什至不确定如何在 SOF 上搜索这个答案,如果之前有人回答过,我深表歉意。如果有人能指出我正确的方向,我将不胜感激:)
最佳答案
您需要 JOIN
到 users
表两次,并在每个 JOIN
上给它们不同的标识符(又名别名)在你的 SQL 中。
SELECT
comment,
userFrom.username AS commentFrom,
userTo.username AS commentTo
FROM comments
JOIN users AS userFrom ON userFrom.ID = comment.commentFrom
JOIN users AS userTo ON userTo.ID = comment.commentTo
关于mysql - 多次加入同一张 table ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17139554/