数据库查询 报错 *****ORA-00918: 未明确定义列;显然数据库不知道你写的列是指谁的列。一般单表查询不会出现这种错误,在多表联合查询的时候,在where 设定查询条件的地方,列名1=参数1。因为列名1没有明确的说明,因为联合查询表1和表2具有同样的列名1。所以在设定条件的地方,列名应该加上表的别名。如 表1别名.列名1。指定列名1为表1的列。
select*from table1 t1 left join table2 t2 on colum1 = '2'; 应该写成 select*from table1 t1 left join table2 t2 on t1.colum1 = '2'; 因为table1和tabel2具有同样的colum1。需要指定colum1为t1或t2的,要不然人家不知道。