集合运算符使用列别名排序问题,请帮忙。
时间:2011-12-02
来源:互联网
SELECT employee_id a, job_id, department_id
FROM employees
UNION ALL
SELECT employee_id , job_id, department_id
FROM job_history
UNION ALL
SELECT employee_id, job_id, department_id
FROM job_history
ORDER BY a
如上面例子,当两个select查询使用集合运算符时,可以使用别名排序,但三个select查询使用集合运算符时就无法使用别名进行排序,如果select中不使用别名,可以使用列名排序。如果有两个select使用相同别名就可以使用别名排序,请问是什么原因?最好能解答下集合查询时处理排序和别名的原理,谢谢!
FROM employees
UNION ALL
SELECT employee_id , job_id, department_id
FROM job_history
UNION ALL
SELECT employee_id, job_id, department_id
FROM job_history
ORDER BY a
如上面例子,当两个select查询使用集合运算符时,可以使用别名排序,但三个select查询使用集合运算符时就无法使用别名进行排序,如果select中不使用别名,可以使用列名排序。如果有两个select使用相同别名就可以使用别名排序,请问是什么原因?最好能解答下集合查询时处理排序和别名的原理,谢谢!
作者: lnsylj 发布时间: 2011-12-02
没啥原理,就是这样的。
不过,可以用下面语句:
SQL code
不过,可以用下面语句:
SQL code
with b as( select 1 as a , 2 as job_id, 3 as dept_id from dual union all select 2 , 2 as job_id, 3 as dept_id from dual union all select 3 , 2 as job_id, 3 as dept_id from dual) select * from b order by b.a
作者: yixilan 发布时间: 2011-12-02
相关阅读 更多
热门阅读
-
office 2019专业增强版最新2021版激活秘钥/序列号/激活码推荐 附激活工具
阅读:74
-
如何安装mysql8.0
阅读:31
-
Word快速设置标题样式步骤详解
阅读:28
-
20+道必知必会的Vue面试题(附答案解析)
阅读:37
-
HTML如何制作表单
阅读:22
-
百词斩可以改天数吗?当然可以,4个步骤轻松修改天数!
阅读:31
-
ET文件格式和XLS格式文件之间如何转化?
阅读:24
-
react和vue的区别及优缺点是什么
阅读:121
-
支付宝人脸识别如何关闭?
阅读:21
-
腾讯微云怎么修改照片或视频备份路径?
阅读:28