基本上我有这4个表:
projects (key:id)
project_users (key:project_id , user_id)
users (key:id)
tasks (key:project_id)
这是我的疑问:
SELECT projects.*, users.*, tasks.*,
FROM
projects JOIN ( project_users JOIN
users ON
project_users.user = users.id )
ON projects.id = project_users.project_id
JOIN ( tasks )
ON projects.id = tasks.project_id
WHERE projects.company = 2 ORDER BY projects.id
基本上我正在尝试获取项目列表,该项目中的用户以及该项目中某个公司的任务。
问题 - 如果此项目中没有任务,则不会返回该项目。我仍然需要该项目,只需要该项目的0个任务。
我是JOIN陈述的新手,所以如果我能做些改进,请告诉我!
感谢您的时间和帮助!!!!!
答案 0 :(得分:2)
您需要做的就是在加入任务的联接之前添加left outer
。即使没有任务,这也可以为您提供项目。
答案 1 :(得分:0)