在调试Oracle一个查询语句时出现:未明确定义列
在这种情况下有可能存在的问题不是字段重命名的问题,而是在查询的列中有重复的列。例如:
select A.*,rownum mynum from (
select ID,NAME,AGE,SEX,ADDR,TEL,AGE from STUDENT where SEX = '1' -- 语句1
)where rownum <=20 --语句2
在这种情况下单独执行语句1是没有问题的,如果从外面执行语句2就会出现ORA-00918的问题,只要把重复列去掉就可以。