2015-04-04 66 views
1

预先感谢我知道我的问题肯定会在接下来的几分钟内解决。从另一个表中打印两列值的SQL查询

我有两个表一个用于用户数据和其他请求表。 请求表包含用户给其他用户提供的所有请求的记录。这些用户详细信息由表1携带用户

现在需要从要求与用户谁发送请求和用户谁收到请求而不是request_by IDrequest_to ID

正如你们知道的名字表中检索数据,我是MySQL的初学者,所以不介意我的查询如下。

select r.* 
    , u.user_name as request_by 
    , u.user_name as request_to 
from req_value r 
left join user u on r.req_to = u.user_id 
       or r.req_by = u.user_id 
+0

你需要加入'user'表* *两次:第一次获得请求者并第二次获得被请求者。 – eggyal 2015-04-04 18:14:41

+0

您需要加入两次用户表。也内连接最有可能是更合适的 – 2015-04-04 18:14:43

+0

请给我发送语法 – 2015-04-04 18:15:40

回答

0

您需要2个INNER JOIN s的的user表获得name 2不同的列:req_toreq_by

select r.* 
    , u1.user_name as request_by 
    , u2.user_name as request_to 
from req_value r 
join user u1 on r.req_by = u1.user_id 
join user u2 on r.req_to = u2.user_id 
+1

好的...非常感谢..其良好的工作继续.. – 2015-04-04 18:18:45

相关问题