У меня есть таблица (Стоимость продукта по местоположению и месяцу / дате) в формате ниже, и я хочу получить Min of ChangeDate, когда стоимость изменилась.
Cost Loc Prod ChangeDate
--------------------------------------------------------
1.223000000000 5678 12345678 2010-01-03 00:00:00
1.223000000000 5678 12345678 2010-01-31 00:00:00
1.223000000000 5678 12345678 2010-02-28 00:00:00
1.000000000000 5678 12345678 2010-04-04 00:00:00
1.223000000000 5678 12345678 2010-05-02 00:00:00
1.223000000000 5678 12345678 2010-05-30 00:00:00
1.223000000000 5678 12345678 2010-07-04 00:00:00
1.277200000000 5678 12345678 2010-08-01 00:00:00
1.277200000000 5678 12345678 2010-08-29 00:00:00
1.277200000000 5678 12345678 2010-10-03 00:00:00
Ожидаемый результат:
Cost Loc Prod CostChangeStartDate
------------------------------------------------
1.223000000000 5678 12345678 2010-01-03 00:00:00
1.000000000000 5678 12345678 2010-04-04 00:00:00
1.223000000000 5678 12345678 2010-05-02 00:00:00
1.277200000000 5678 12345678 2010-08-01 00:00:00
Я попытался использовать Row_Number () Over (PartitionBy OrderBy), но проблема в том, что, поскольку Cost 1.223000000000 повторяется дважды, я не могу правильно разбить его, поэтому получаю только 3 записи.
1.223
было2010-01-03
в обеих строках? - person Jeremy Fortune   schedule 26.08.2016row_number() over (order by x) - row_number() over (partition by cost order by x)
) - person ZLK   schedule 26.08.2016