环境:oracle 11g
1.@ZFJW这个库下不存在V_JW_JSKCAP这个表,你在本库中定义的名字是:V_JW_JSKCAP
2.V_JW_JSKCAP @V_JW_JSKCAP;-------中间还有个空格;
如例;(红色)
create or replace view kbzf as
select
t1.xn,t1.xq ,jszgh,jsxm,bjhz,xqj,sksj,jsmc,qsjsz,jc,kcmc
from V_JW_JSKCAP @ZFJW t1
right join (
select * from (
select
cast(xn as varchar(10)) as xn ,cast(xq as varchar(5)) as xq
from kbzf group by xn,xq order by xn desc,xq desc
) where rownum=1
) t2 on t1.xn=t2.xn and t1.xq=t2.xq;
在自身查询语句中调用自身,却然可以查询出结果,但创建表时就会报这个问题了。
解决:只要不调用自身就可以了,如:
create or replace view kbzf as
select
t1.xn,t1.xq ,jszgh,jsxm,bjhz,xqj,sksj,jsmc,qsjsz,jc,kcmc
from V_JW_JSKCAP @ZFJW t1
right join (
select * from (
select
cast(xn as varchar(10)) as xn ,cast(xq as varchar(5)) as xq
from V_JW_JSKCAP @ZFJW group by xn,xq order by xn desc,xq desc
) where rownum=1
) t2 on t1.xn=t2.xn and t1.xq=t2.xq;