Oracle 获取ORA-00918:列在10g上定义模糊错误,但在11g中有效
这是我为所有表定义的查询表别名 以下10g列是否需要列别名Oracle 获取ORA-00918:列在10g上定义模糊错误,但在11g中有效,oracle,oracle11g,oracle10g,Oracle,Oracle11g,Oracle10g,这是我为所有表定义的查询表别名 以下10g列是否需要列别名 select distinct p.id, format_name(p.fname, p.lname,'local000000000000001') full_name, p.username, p.person_no, jobinfo.name, company.name2, company.name, dom.name, per_mgr.username
select distinct p.id,
format_name(p.fname, p.lname,'local000000000000001') full_name,
p.username,
p.person_no,
jobinfo.name,
company.name2,
company.name,
dom.name,
per_mgr.username,
a.name
from cmt_person p
inner join fgt_locale loc on loc.id='local000000000000001'
left outer join tpt_company company on p.company_id = company.id
left outer join tpt_ext_job_type jobinfo on p.jobtype_id = jobinfo.id AND jobinfo.locale_id=loc.id
inner join fgt_domain dom on p.split = dom.id
left outer join fgt_gen gen on gen.id1 = p.id and gen.TYPE = 301 and gen.str2 IS NULL
left outer join fgt_ext_admin_managed_lov a on a.id = gen.id2 and a.locale_id = loc.id
left outer join cmt_person per_mgr on per_mgr.id = p.manager_id
inner join fgt_address a on a.owner_id = p.id
where ( p.terminated_on is null or p.terminated_on >= sysdate)
and( (p.type = 100 and p.split in ('domin000000000000007','domin000000000001107','domin000000000001108','domin000000000001109','domin000000000001104','domin000000000001103','domin000000000001106','domin000000000001105','domin000000000000001','domin000000000001102','domin000000000001110'))
or (p.type = 200 and p.split in ('domin000000000000007','domin000000000001107','domin000000000001108','domin000000000001109','domin000000000001104','domin000000000001103','domin000000000001106','domin000000000001105','domin000000000000001','domin000000000001102','domin000000000001110')) )
AND 1=1
AND lower(p.status) = lower('A')
AND lower(a.country) like lower('USA' || '%')
AND p.type in (decode('1','1',100,'2',200,'0',p.type))
AND p.manager_id in ('emplo000000000034578')
ORDER BY 2,3,4,5,6,7,8,9,10
两个表共享相同的别名(“a”):
fgt\u ext\u admin\u managed\u lov
和fgt\u address
。改变它,因为这不起作用:
jobinfo.name ,
company.name2 ,
company.name ,
dom.name
请参阅以下代码:-
左外连接fgt\U ext\U admin\U managed\U lov a
SQL> select a.deptno
2 from dept a, emp a;
select a.deptno
*
ERROR at line 1:
ORA-00918: column ambiguously defined
SQL>