Ни CASE, ни DECODE не проверят, существует ли изображение в этом URL.
Если вы хотите проверить значения PATIENT_ID или BOOK_ID, вам на самом деле не нужно включать весь URL в ваш CASE / DECODE.
Вам просто нужно что-то вроде:
select patient_id
, book_id
, case
when <boolean_condition> then 'some string here'
when <another boolean condition> then 'other string here'
else 'another string'
end img_src
from dual