Oracle查询错误分析:ORA-01791:不是SELECTed表达式
2014-01-02 18:00
597 查看
表结构如下:
使用下面语句进行查询
原因是order by后面的GOODID字段不在select查询结果字段之中,因为使用了distinct关键字。
解决方法
1、将此字段加入到select之后
2、如果觉得GOODID字段是多余的,实在是不想将它查询出来,可修改为如下:
create table HH_BOOK_GOOD ( ID VARCHAR2(32) not null, BOOKID VARCHAR2(32) not null, GOODID VARCHAR2(32) not null, GOODPRICE FLOAT not null, GOODNAME VARCHAR2(256) not null, GOODNOTE VARCHAR2(1024) not null )
使用下面语句进行查询
select distinct ID,BOOKID,GOODPRICE from HH_BOOK_GOOD order by GOODID;报ORA-01791:不是SELECTed表达式
原因是order by后面的GOODID字段不在select查询结果字段之中,因为使用了distinct关键字。
解决方法
1、将此字段加入到select之后
select distinct ID,BOOKID,GOODPRICE,GOODID from hh_book_good order by GOODID;
2、如果觉得GOODID字段是多余的,实在是不想将它查询出来,可修改为如下:
select ID,BOOKID,GOODPRICE from(select distinct ID,BOOKID,GOODPRICE,GOODID from HH_BOOK_GOOD) order by GOODID;
相关文章推荐
- Oracle查询错误分析:ORA-01791:不是SELECTed表达式
- Oracle查询错误分析:ORA-01791:不是SELECTed表达式
- Oracle查询错误分析:ORA-01791:不是SELECTed表达式
- Oracle查询错误分析:ORA-01791:不是SELECTed表达式
- ORACLE查询中出现“Ora-01791 不是Selected表达式”错误信息的解决办法
- 错误解决--oracle中出现ORA-01791: 不是 SELECTed 表达式 错误
- oracle中出现ORA-01791:不是SELECTed表达式错误
- 错误解决--oracle中出现ORA-01791: 不是 SELECTed 表达式 错误
- oracle分组查询实例ORA-00979和ORA-00937错误分析
- Oracle:ORA-01791: 不是 SELECTed 表达式
- 【不错】oracle内存管理之PGA之案例分析:ora-04031与ora-04030错误分析与解决
- 【ORACLE】ora-12519错误分析解决
- 以sysdba身份登录oracle报ORA-1031权限不足错误之完美分析
- 对Oracle导出文件错误和DMP文件结构的分析,EXP-00008: 遇到 ORACLE 错误 904 ORA-00904: "MAXSIZE": invalid identifier
- 对Oracle导出文件错误和DMP文件结构的分析,EXP-00008: 遇到 ORACLE 错误 904 ORA-00904: "MAXSIZE": invalid identifier
- Oracle:Ora-01791 不是Selected表达式
- Oracle ORA-07445 [0000000000000000] 错误分析
- Oracle ORA-07445 [0000000000000000] 错误分析
- 开发:异常收集之 ibatis+Oracle 查询时: ORA-00911错误
- Oracle ORA-07445 [0000000000000000] 错误分析