Один из вариантов - перенести этот «конкретный календарь» в Oracle.Например, создайте таблицу, которая будет содержать эти даты:
create table business_months
(b_month number,
date_from date,
date_to date
);
insert into business_months values (1, date '2018-12-28', date '2019-01-25');
insert into business_months values (2, date '2019-01-26', date '2019-02-25');
etc.
Затем разверните текущий запрос, чтобы он использовал таблицу business_months
:
select id9.xdat
id9.xidd,
id9.xstr
from poolgen.oppid9 id9
join business_months bm on id9.xdat between bm.date_from and bm.date_to
where bm.b_month = 1; --> January