2017-07-26 109 views
0

我正在使用用户和参考表进行查询。MySQL加入两个表

用户表看起来像这样

user_id | user_name 
1  | john 
2  | smith 
3  | sunny 

和参考看起来是这样的,其中REFERENCE_ID是user.user_id的外键

id | user_id | reference_id 
1 | 2  | 1 
2 | 3  | 1 

我可以加入这些表格,并得到如下结果

id | user_name | reference_id 
1 | smith  | 1 

但我想要做的是,而不是reference_id我想选择user_name的re这样

quote_id | user_name | user_name(reference) 
1  | smith  | john 
+0

在哪里查询? – Eric

回答

0

ferenced用户你必须参加两次用户表,然后

SELECT * FROM 
    reference r 
    INNER JOIN 
    user u1 
    ON 
    r.user_id = u1.user_id 

    INNER JOIN 
    user u2 
    ON 
    r.reference_id = u2.user_id 

SQL小提琴:http://sqlfiddle.com/#!9/9469e/12/0