MySQL导师学生表

时间:2017-06-18 15:28:09

标签: mysql database

这是问题,
我有一个数据库,其中有一个名为Users with users with UserID Mentor和Name的表,我想向用户及其导师展示。如果我这样做:

SELECT UserID, mentorID, Name
FROM Users;

我会得到这个:

| UserID | Mentor | Name
| 1      | NULL     | Walter
| 2      | 1        | Jesse
| 3      | 1        | Todd  

但我希望得到这样的结果:

| UserID | Mentor | Name
| 1      | NULL   | Walter
| 2      | Walter | Jesse
| 3      | Walter | Todd

感谢您的帮助 祝你有愉快的一天:)

P.S。
真正的数据库有点复杂,但我在这里简化它。

2 个答案:

答案 0 :(得分:0)

您可以使用自联接(具有相同表格的联接)

select a.userID, a.Name as user_name , a.mentorID, b.Name as mentor_name
from user a
left join user b on a.mentorID = b.userID

答案 1 :(得分:0)

获取使用自联接所需的数据(自联接是表与自身连接的连接) -

SELECT u.UserID, m.Name AS mentor, u.Name FROM user as u LEFT JOIN user AS m ON u.MentorID = m.UserID