Bisakah Anda mencoba dengan di bawah ini,
Saya telah menggunakan coalesce
jika tidak ada kecocokan untuk kolom queue
itu akan menganggapnya sebagai nol dan nilai 2
diambil sebagai gantinya.
update product pd
set pd.age = case
when pd.exittime != null then
(sysdate - pd.exittime)
else
coalesce((select (sysdate - pd.entrytime)
from department dp
where pd.queue = dp.queue
and pd.id = dp.id)
,2)
end
where pd.id > 1
and pd.status in ('1','7','2','5')
and exists (select 1
from department dp
where pd.id = dp.id
and pd.currentstatus = dp.currentstatus
and pd.activity = dp.activity);