Du kan använda en yttre sammanfogning så här:
SELECT OrderId,
OrderDate,
case when holidaydate is not null then 'Public holiday'
else to_char(OrderDate, 'Day') end as DAY
from orders
left outer join holidays
on OrderDate = holiday_date ;
Om datumen matchar holidaydate
är inte null så CASE-satsen visar din önskade sträng annars visar den dagen för orderdate
.
orders
är ett reserverat ord. Förmodligen har din riktiga tabell ett annat namn, för att undvika ora-00903
fel. Jag har använt orders
i mitt exempel, så du måste redigera min kod så att den matchar dina tabellnamn.