关于在oracle 中 引用列的别名无法识别的原因分析
2013-11-12 11:27
246 查看
示例:
SQL> SELECT name N FROM Stu WHERE N<>a;
此时会报错,无法识别N。
首先要知道,在Oracle中,查询(select) 语句的执行顺序是下面这样的:
1. from语句
2. where语句(结合条件)
3. start with语句
4. connect by语句
5. where语句
6. group by语句
7. having语句
8. model语句
9. select语句
10. union、minus、intersect
11. order by
SELECT 语句在WHERE语句后面才执行,而列的别名是在SELECT 时才生成的,所以出错了
根据实际情况可以写成 select N from (SELECT name FROM Stu)where N<>a;
SQL> SELECT name N FROM Stu WHERE N<>a;
此时会报错,无法识别N。
首先要知道,在Oracle中,查询(select) 语句的执行顺序是下面这样的:
1. from语句
2. where语句(结合条件)
3. start with语句
4. connect by语句
5. where语句
6. group by语句
7. having语句
8. model语句
9. select语句
10. union、minus、intersect
11. order by
SELECT 语句在WHERE语句后面才执行,而列的别名是在SELECT 时才生成的,所以出错了
根据实际情况可以写成 select N from (SELECT name FROM Stu)where N<>a;
相关文章推荐
- 关于Oracle在where子句中引用列别名问题的分析
- ssh关于含有外键的传值中无法识别正确的action的原因和解决办法
- USB无法识别原因分析及解决方案
- 关于tomcat下spring无法加载依赖jar中properties文件的原因分析
- 关于使用SOCKET发送数据时“目标积极积极拒绝,无法连接”错误的原因分析
- win7 u盘无法识别原因分析及解决
- 关于LENOVO ThinkServer RD350使用RT内核后无法正常启动的原因分析
- 关于无法识别AVD的原因
- [笔记].关于使用fscanf无法录入正确数据的原因分析
- 火狐无法识别网页中的反斜杠引用
- [Oracle 11g r2(11.2.0.4.0)]案例分析3-由于同一个子网中存在同名集群导致的gpnp 无法启动
- [Oracle 11g r2(11.2.0.4.0)]案例分析4-由gipc 进程导致的节点无法启动
- 关于“System.NullReferenceException: 未将对象引用设置到对象的实例”问题原因。
- Flash Builder 无法概要分析 原因查找
- 创建Oracle数据源: [Oracle][ODBC][Ora]ORA-12514:TNS:监听程序当前无法识别连接描述符中请求的服务
- 关于使用Struts2框架的校验文件不起作用的原因分析
- hadoop 8088端口网页无法打开的原因分析
- 关于Eclipse无法识别手机或者模拟器的解决方案
- mysql数据库在不同的服务器,无法进行数据传输,或者导入导出数据错误,原因分析
- 关于第三方类库BeanUtils导入包后无法引用