, пожалуйста, помогите, пробовал разные запросы без удачи в среде Oracle. Для упрощения случая предположим, что у нас есть одна таблица с записями, подобными этой
doc_id doc_date product_id price
1 01.01.2011 1 20.3
1 01.01.2011 2 10.0
2 15.01.2011 3 10.3
2 15.01.2011 2 null
Таким образом, цена на продукт устанавливается документом от doc_date до следующей doc_date или на бесконечность, если больше не существует документа, который устанавливает новую цену или сбрасывает ее на ноль, ноль означает, что продажи продукта недоступны, начиная с doc_date.
Мне нужно выбрать, который "развертывает" данные в форме:
doc_id from_date to_date product_id price
1 01.01.2011 null 1 20.3
1 01.01.2011 14.01.2011 2 10.0
2 15.01.2011 null 2 null
2 15.01.2011 null 3 10.3
или даже:
doc_id from_date to_date product_id price
1 01.01.2011 14.01.2011 1 20.3
1 01.01.2011 14.01.2011 2 10.0
2 15.01.2011 null 2 null
2 15.01.2011 null 3 10.3
any 15.01.2011 null 1 20.3
Спасибо!