Вы можете использовать row_number()
, чтобы получить самую последнюю запись для distsch
, что определяется по столбцу заказа data_collection_week
:
select *
from (
select
t.*,
row_number() over(partition by distsch order by data_collection_week desc) rn
from mytable t
) t
where rn = 1
Другое типичное решение - это фильтрация с коррелированным подзапросом:
select t.*
from mytable t
where t.data_collection_week = (
select max(t1.data_collection_week) from mytable t1 where t1.distsch = t.distsch
)