oracle 两个sql带有order by的使用union/union all的时候报错 'ORA-0

时间:2021-12-13 03:55:38

错误语句:select id,name from s1 order by stime union all select id,name from s2 order by stime 

报错原因:oracle 搜索到order by后认为整个select语句就该结束了但是后面还有union all所以数据库无法解析,导致报错

处理办法:with a1 as (select id,name from s1 order by stime) , a2 as (select id,name from s2 order by stime)  select * from a1 union all select * from a2