У меня есть этот набор данных, который содержит данные только по рабочим дням.Вот как это выглядит:
ID Name Some Val Other Val Date
10 Somebody 33001.93 33001.93 2018-10-01
10 Somebody 33481.93 33481.93 2018-10-02
10 Somebody 33001.93 33001.93 2018-10-03
10 Somebody 33582.76 33582.76 2018-10-04
10 Somebody 33582.73 33582.79 2018-10-05
10 Somebody 33582.76 33582.76 2018-10-08
10 Somebody 33342.76 33342.76 2018-10-09
10 Somebody 33462.76 33462.76 2018-10-10
Мое вычисление требует заполнения данных за все дни месяца.Чтобы сделать данные пригодными для использования, мне нужно заполнить данные и для выходных.
В приведенном выше примере данных пропущенные записи для дат 2018-10-06 и 2018-10-7 должны быть реплицированы в соответствии с последним доступным значением (2018-10-05) в этом случае.Таким образом, результирующий набор данных после преобразования выглядит следующим образом:
ID Name Some Val Other Val Date
10 Somebody 33001.93 33001.93 2018-10-01
10 Somebody 33481.93 33481.93 2018-10-02
10 Somebody 33001.93 33001.93 2018-10-03
10 Somebody 33582.76 33582.76 2018-10-04
10 Somebody 33582.73 33582.79 2018-10-05
10 Somebody 33582.73 33582.79 2018-10-06
10 Somebody 33582.73 33582.79 2018-10-07
10 Somebody 33582.76 33582.76 2018-10-08
10 Somebody 33342.76 33342.76 2018-10-09
10 Somebody 33462.76 33462.76 2018-10-10
Я ищу руководство о том, как сохранить отсутствующую запись, пройтись по всем доступным строкам и вставить строку, где бы она ни отсутствовала.Я думаю о создании справочной таблицы, которая содержит все значения дат, объединяет их и везде, где нет совпадений, мне нужно вставить последнее доступное значение.
Мой опыт работы с SQL ограничен и исходит из фона SASЯ могу сделать это с помощью макросов.Я полностью застрял в том, как атаковать эту проблему в SQL.
Нужно руководство, как действовать.