我有几个表要连接,它们是通过一个透视表连接的。
我有一个projects
表,一个employees
表和一个名为employee_project
的pivot表,它既有project_id
又有employee_id
:
| ID|员工ID|项目ID|
| --|--|--|
我想从employees
表中获取first_name
和last_name
,但where子句应该在projects
表中的company_id
和course_id
中搜索。
到目前为止,我有:
SELECT *
FROM projects
JOIN employees
ON employees.id = employee_project.employee_id
JOIN employee_project
ON projects.id = employee_project.project_id
WHERE course_id = 3 AND company_id = 150004
字符串
但这显然没有达到预期效果。
2条答案
按热度按时间qhhrdooz1#
你的查询中的问题是你在连接之前使用了
employee_project
表。我只是改变了连接的顺序,它似乎工作了!字符串
这应该为您给予与符合您的标准的项目相关联的员工的
first_name
和last_name
。doinxwow2#
应先连接employee_project表,然后再连接employees表
字符串