内连接列两次具有不同的值

时间:2015-12-17 20:47:12

标签: mysql

我是数据库设计的新手,所以如果这是一个效率低下的设计,请告诉我。这是我在这里的第一篇文章,如果你有任何关于如何更好地描述它的提示,我将不胜感激。

情况如下:

  • 用户注册并能够审核其他用户
  • 我有一张表“用户”
  • 我有一张桌子“评论”

评论表包含以下列:

  • ReviewID
  • UserID(撰写评论的人)
  • 评论:文字中的实际评论
  • 已审核_User_ID:已审核人员的用户ID

我的问题是:如何创建显示列的联接:Users.First_name,Review.review,被审核人员的first_name

然后会读取:姓名 - 写评论 - 姓名。而不是姓名 - 写了评论 - UserID

这样的内部联接:

SELECT users.first_name, review.review, review.reviewed_user_id
FROM users
INNER JOIN review ON users.user_id = review.user_ID

将向我显示reviews_user_id,但我想添加该人的first_name。这甚至可能吗?

非常感谢您提供任何帮助或建议!

1 个答案:

答案 0 :(得分:0)

请尝试使用类似的东西

NULL

在这种情况下,我们通过字段SELECT users.first_name , review.review , review.reviewed_user_id , reviewed_user.first_name FROM users INNER JOIN review ON users.user_id = review.user_ID INNER JOIN users reviewed_user ON review.reviewed_user_id = reviewed_user.user_id 使用别名users

从表review向表reviewed_user_id添加其他联接