Я не уверен, что вы поняли, что сказали комментарии - это строки 2 и 3, сомнительные , потому что нет способа узнать, какой из них произошел первым.
В любом случае, как вы сказали, что в этой таблице больше нет ничего, что помогло бы нам решить, как насчет чего-то подобного? Сравните текущий план со следующим (отсортировано по месяцам) и выберите строки, в которых нет изменений в плане.
SQL> with test (customer, month, plan) as
2 (select 1, 1, 'A' from dual union all
3 select 1, 2, 'A' from dual union all
4 select 1, 2, 'B' from dual union all
5 select 1, 3, 'B' from dual
6 ),
7 inter as
8 (select customer, month, plan,
9 nvl(lead(plan) over (partition by customer order by month), plan) lead_plan
10 from test
11 )
12 select customer, month, plan
13 from inter
14 where plan = lead_plan
15 order by month;
CUSTOMER MONTH PLAN
---------- ---------- -----
1 1 A
1 2 B
1 3 B
SQL>