答案 0 :(得分:3)
没有简单的方法可以做到这一点,因为这种类型的处理并不适合关系数据库。为什么?结果集完全取决于排序 - 而SQL可以使用未排序的集合。
有可能。这是一种方法:
select (case when employee is null then manager end) as manager,
employee
from ((select distinct manager, NULL as employee from work) union all
(select manager, employee from work)
) me
order by manager, (case when employee is null then 1 else 2 end), employee;
但是,我建议您在应用程序层而不是数据库中执行此操作。