Jadi, Anda ingin mencari urutan tanggal yang sama.
Berikut ini triknya:jika Anda mengambil perbedaan antara row_number()
atas seluruh grup dan row_number()
dipartisi oleh code
, maka akan konstan untuk baris yang berdekatan dengan kode yang sama. Sisanya hanya agregasi:
select min(date), max(date), code
from (select t.*,
(row_number() over (order by date) -
row_number() over (partition by code order by date)
) as grpid
from followingdata t
) t
group by grpid, code;