select t.IDS,t.NAMES,t.TIME1,t.TIME2,t.PID from (select IDS,NAMES,TIME1,TIME2,PID,2 as order_level from task union all select IDS,NAMES,TIME1,TIME2,PID,1 as order_level from Project )t order by pid,order_level,ids;
union 在连接后要排序的,按第一个字段进行升序排列! union all 不会排序紧紧通过你上面给的数据和顺序来看 直接用union all之后再 order by PID,IDS是能够达到你说的效果的或许你给的数据和你实际数据和顺序上存在不一致, 这样的话,按10#方法,加个字段,排序应该可以了
--去掉重复就把union all换成union
select * from (
select * from Task union all select * from Project)
order by PID,IDS
然后,有是项目ID,下面是它的TaskID
是不是Task表的PID与Project表的IDS关联,Task从属于Project
那Project表的IDS与Project表的PID有什么关系,是不是一个Project也有可能从属于另一个Project
(select IDS,NAMES,TIME1,TIME2,PID,2 as order_level from task
union all
select IDS,NAMES,TIME1,TIME2,PID,1 as order_level from Project
)t
order by pid,order_level,ids;
union all 不会排序紧紧通过你上面给的数据和顺序来看
直接用union all之后再 order by PID,IDS是能够达到你说的效果的或许你给的数据和你实际数据和顺序上存在不一致,
这样的话,按10#方法,加个字段,排序应该可以了