Mysql 从单个查询中获取不同列的步骤

Mysql 从单个查询中获取不同列的步骤,mysql,sql,Mysql,Sql,考虑下表中存储的有关项目和成员的数据。

项目(id、标题)
成员(id、名称、项目id)

生成一份报告,列出所有项目以及正在处理这些项目的成员。同时列出尚未分配任何员工的项目,以及可作为免费资源使用的员工 桌子- Projects(id, title)
 Members(id, name, project_id) 当我应用外部联接并得到所有答案时,是否有人可以优化查询。我需要根据所需问题分隔列 Select p.title, m.id From projects p FULL O

考虑下表中存储的有关项目和成员的数据。

项目(id、标题)
成员(id、名称、项目id)

生成一份报告,列出所有项目以及正在处理这些项目的成员。同时列出尚未分配任何员工的项目,以及可作为免费资源使用的员工

桌子-

Projects(id, title)
    
Members(id, name, project_id)
当我应用外部联接并得到所有答案时,是否有人可以优化查询。我需要根据所需问题分隔列

Select  p.title, m.id
From projects p FULL OUTER JOIN 
     Members m 
where p.id = m.project_id;

MySQL不支持
完全连接
。因此,请分两步执行此操作:

Select p.title, m.id
From projects p LEFT JOIN 
     Members m 
     ON p.id = m.project_id
union all
select null, m.id
from members m
where not exists (select 1 from projects p where p.id = m.project_id);

在上使用
,而不是在哪里使用。@jarlh我想你可以在这里大胆回答。@TimBiegeleisen,可能吧。从来没有读过这个问题,只是注意到了上面的缺失。这是什么RDBMS?