ORA-00932: 数据类型不一致: 应为 -, 但却得到 -

报错的sql语句sql

①select * from (select t.*,rownum r from (select * from users where 1=1 and pwd=11 order by id asc) t where rownum<=3) where r>=1;ide

执行成功的sql语句it

②select id,name,pwd,email,tel,birthday,grade from (select t.*,rownum r from (select * from users where 1=1 and pwd=11 order by id asc) t where rownum<=3) where r>=1;class

①中的查询结果集中有rownum伪列,而users表中并不存在此列,故会报数据类型不一致的错误email

只需在最外层中把users表中存在的列给过滤出来便可select