出现这种错误,一般是列名重复导致的,如下:
create table testchar(
v_date varchar2(20),
d_date date
)
insert into testchar select '2018-07-20', date'2018-07-20' from dual;
# 这时候有两个字段都是vv, 那么查询时,就会区分不出来这两列,oracle就会报ORA-00918
select * from (select v_date as vv, d_date as vv from testchar);