正常思维肯定都是如此写
select * from dual order by 1
union all
select * from dual order by 1
但是这样的sql会报错,sql命令未正确结束
下面提供三种方式
1.
select * from dual
union all
select * from dual order by 1;
虽然order by 是写在最后,第一个没有写,这里的order by 是对整体起作用
2.
select * from (select * from dual
union all
select * from dual) order by 1
这跟第一种其实是一样的,效果也是一样的
3.
select * from (select * from dual order by 1)
union all
select * from (select * from dual order by 1);
这个前面两种是有差别的,这个是第一个sql先排好序,第二个sql是接着第一个后面排序