Я получаю ошибку в запросе. Этот запрос в порядке и возвращает данные (селекторы и rownums для нумерации страниц):
select *
from (select a.*, rownum rnum
from (select id_edition, id_document, name, extension, creation_date, url,
(select inscription_date from edition_student_d0 where id_edition = 12345 and id_third = 12345) inscription_date
from upd_edition_doc_d0
where id_edition = 1071591
order by creation_date desc) a
where rownum <= 10 )
where rnum >= 1
Теперь я пытаюсь включить «случай, когда» и получить URL-адрес только при некоторых обстоятельствах, поэтому я делаю эти изменения, в том числе блок дела:
select *
from (select a.*, rownum rnum
from (select id_edition, id_document, name, extension, creation_date,
(select inscription_date from edition_student_d0 where id_edition = 12345 and id_third = 12345) inscription_date,
case
when trunc(inscription_date + 90) <= trunc(sysdate) then null
else url
end url
from upd_edition_doc_d0
where id_edition = 1071591
order by creation_date desc) a
where rownum <= 10 )
where rnum >= 1
Oracle запускает эту ошибку:
ORA-00904: "INSCRIPTION_DATE": invalid identifier
Полагаю, это потому, что я запрашиваю inscription_date и использую его на том же уровне запросов, но я не знаю, как с этим справиться.
Кроме того, как я могу сделать то, что я пытаюсь сделать? Я имею в виду, получение URL только при определенных условиях.
Кто-нибудь может помочь?
Заранее спасибо.