内部联接 - 在每行中选择2个参数

时间:2014-10-21 08:22:11

标签: mysql sql pdo

我有一个名为timesheet的表和一个名为user的表。在用户中我获得了名称和时间表,我得到了userID(用户ID)和myID(最后修改者)

表格 - 用户

ID | Name   | Lastname |
4  | Anders | Nilsson  |
5  | Erik   | Stolt    |

表格 - 时间表

ID | userID | myID | info | order |
1  | 4      | 5    | text | 202   |

我也希望看到谁修改了和巫婆用户

Name   | Modified | info | order |
Anders | Erik     | text | 202   |

如何匹配myID和Name并添加另一个变量?

userID = 4

myID = 5

4 =安德斯

5 = Erik

"SELECT * FROM timesheet INNER JOIN user ON (timesheet.userID = user.ID) WHERE userID=$user";

2 个答案:

答案 0 :(得分:0)

SELECT
  ua.Name,
  up.Name AS Modified,
  ua.info,
  ua.order
FROM
  timesheet t INNER JOIN user ua
ON
  ua.ID=t.userID INNER JOIN user up
ON
  up.ID=t.myID
WHERE
  ua.ID = ?;

答案 1 :(得分:0)

您必须使用时间表表格对JOIN使用表格进行2次,例如:

select u1.name as Name, u2.name as Modified, t.info, t.order
from timesheet t
JOIN user u1 on t.userID = u1.ID
JOIN user u2 on t.myID u1.ID