我有一个错误ORA-00918:列模糊定义。 该列是NARRATION,它在“view_accvoucherrep”和“view_accchequedetails”表中定义。当我在搜索选项中使用别名时,它工作正常。但不能这样写。 当我们在没有搜索条件的情况下运行,即“UPPER(NARRATION)LIKE'%CHECK'时,它工作正常并显示所有结果。
SELECT * FROM
(
SELECT
a.LOCATIONNAME,DEBIT,CREDIT,
a.NARRATION as NARRATION,
a.VOUCHERTYPE
from view_accvoucherrep a
left join view_accchequedetails dep_chq on dep_chq.locationcode=a.locationcode
where a.TRANYEAR='2014_2015'
and UPPER(NARRATION) LIKE '%CHEQUE%'
)
答案 0 :(得分:0)
您不能在其中使用列别名。您必须使用表别名
在那里使用列名称SELECT * FROM
(
SELECT
a.LOCATIONNAME,DEBIT,CREDIT,
a.NARRATION as NARRATION,
a.VOUCHERTYPE
from view_accvoucherrep a
left join view_accchequedetails dep_chq on dep_chq.locationcode=a.locationcode
where a.TRANYEAR='2014_2015'
and UPPER(a.NARRATION) LIKE '%CHEQUE%'
)