模糊 ORA-00904 标识符无效错误
Posted
技术标签:
【中文标题】模糊 ORA-00904 标识符无效错误【英文标题】:Vague ORA-00904 Invalid Identifier error 【发布时间】:2016-03-29 12:29:40 【问题描述】:我有一个查询,我在其中构建了一个值表,并将它与另一个查询联合起来。我希望返回一组结果,其中两个表之间的一个值不匹配。 (下面的查询示例)。每次我尝试执行时,都会收到可怕的无效标识符错误,但我不知道为什么。任何建议将不胜感激!
select * from (
select '1234567' as empno, 'A' as status, 'Active' as st_name from dual union all
select '89012345' as empno, 'DA' as status, 'Inactive' as st_name from dual) ft
union
select id,status,statusnm from second_table st
where st.id = ft.empno
and st.statusnm <> ft.st_name;
有什么想法/建议吗?
【问题讨论】:
【参考方案1】:你不想要union
,你想要join
。 . .它应该是明确的:
select st.*
from (select '1234567' as empno, 'A' as status, 'Active' as st_name from dual
union all
select '89012345' as empno, 'DA' as status, 'Inactive' as st_name from dual
) ft join
second_table st
on st.id = ft.empno and st.statusnm <> ft.st_name
【讨论】:
我知道这很愚蠢。感谢您的洞察力!以上是关于模糊 ORA-00904 标识符无效错误的主要内容,如果未能解决你的问题,请参考以下文章