Неверный идентификатор в SQL-запросе

Этот запрос выдает ошибку ORA-00904: invalid identifierКто-нибудь может сказать мне, почему?

select papf.person_id, papf.person_number, ppnf.DISPLAY_NAME
from per_people_f papf, PER_PERSON_NAMES_F ppnf
where
papf.person_id=ppnf.person_id
and papf.person_id not in (select cs.person_id from cmp_salary cs where cs.person_id is not null and cs.ASSIGNMENT_ID is null )
and papf.person_id not in (select cse.person_id from cmp_salary_export cs where cse.person_id is not null and cse.ASSIGNMENT_ID is null )
and ppnf.name_type='US'
order by papf.person_id

1 ответ

Это опечатка. Во втором подзапросе вы дали псевдонимы всем ссылкам на столбцы cse. но вы дали псевдоним таблице cs,

(select cse.person_id
 from cmp_salary_export cs 
 where cse.person_id is not null 
 and cse.ASSIGNMENT_ID is null )

Компоновка вашего кода с правильными отступами - это не просто педантичность: облегчение чтения облегчает отладку.

Другие вопросы по тегам