详细原因
- SQL 字段名拼写错误;
- 建表时字段带特殊符号 / 中文,未用双引号,查询时格式不匹配;
- 别名冲突,where 条件使用 select 别名(Oracle 不支持);
- 视图删除重建后字段变更,旧 SQL 未同步修改。
完整排查 & 解决
- 查询表真实字段核对
sql
desc scott.emp;
select column_name from dba_tab_columns where table_name='EMP';
- 特殊字段查询加双引号区分大小写
sql
select "userName" from test;
- where 不能用别名,改用子查询嵌套。