MySQL,第二个INNER JOIN

时间:2013-03-14 11:38:35

标签: mysql

嗨我试着用情侣INNER JOIN做查询,我的错在哪里?

SELECT job_tbl.id,accounts.username AS starter,accounts.username AS worker,job_tbl.comment,job_tbl.date,job_tbl.status

FROM job_tbl

INNER JOIN帐户ON job_tbl.starter = accounts.id

INNER JOIN帐户ON job_tbl.worker = accounts.id

job_tbl table here:

+----+---------+--------+---------+------+--------+
| id | starter | worker | comment | date | status |
+----+---------+--------+---------+------+--------+
| 1  |    1    |    3   |   qwe   | date |   10   |
+----+---------+--------+---------+------+--------+
| 2  |    2    |    1   |   qwe   | date |   10   |
+----+---------+--------+---------+------+--------+

帐户表:

+----+------------+-----------+-------+
| id |  username  | extension | email |
+----+------------+-----------+-------+
| 1  |   Julia    |    100    | email |
+----+------------+-----------+-------+
| 2  |    Eve     |    101    | email |
+----+------------+-----------+-------+
| 3  |    Max     |    102    | email |
+----+------------+-----------+-------+

结果我希望它是:

+----+---------+--------+---------+------+--------+
| id | starter | worker | comment | date | status |
+----+---------+--------+---------+------+--------+
| 1  |  Julia  |   Max  |   qwe   | date |   10   |
+----+---------+--------+---------+------+--------+
| 2  |   Eve   |  Julia |   qwe   | date |   10   |
+----+---------+--------+---------+------+--------+

2 个答案:

答案 0 :(得分:3)

您没有指定将哪个accounts表实例用作启动器或工作器。 试试这个:

SELECT job_tbl.id, job_tbl.description, Starter.username AS starter, Worker.username AS worker, job_tbl.comment, job_tbl.date, job_tbl.status
FROM job_tbl
INNER JOIN accounts AS Starter ON job_tbl.starter = Starter.id
INNER JOIN accounts AS Worker ON job_tbl.worker = Worker.id

答案 1 :(得分:1)

问题是你要加入两个表而没有在表ALIAS上指定accounts导致模糊状态。

SELECT  a.*,
        b.username StarterName,
        c.userName WorkerName
FROM    job_tbl a
        INNER JOIN account b
            ON a.starter = b.id
        INNER JOIN account c
            ON a.worker = c.ID

要进一步了解联接,请访问以下链接: