Обычно помогает агрегирование (код, который может вам понадобиться, начинается со строки № 8):
SQL> alter session set nls_date_format = 'mm-dd-yyyy';
Session altered.
SQL> with
2 -- sample data; you have that, don't type it
3 test (donem_id, urun_id, tariff, tarife_pri, start_date, end_date) as
4 (select 'xx10', 1, 12, 123, date '2003-01-02', null from dual union all
5 select 'xx11', 1, 12, 123, date '2003-01-02', date '2003-01-11' from dual union all
6 select 'xx12', 1, 12, 124, date '2003-01-11', null from dual
7 )
8 select urun_id, tariff, tarife_pri, min(start_date) start_date, max(end_date) end_date
9 from test
10 group by urun_id, tariff, tarife_pri
11 order by urun_id, tariff, tarife_pri;
URUN_ID TARIFF TARIFE_PRI START_DATE END_DATE
---------- ---------- ---------- ---------- ----------
1 12 123 01-02-2003 01-11-2003
1 12 124 01-11-2003
SQL>