0
fedoss
23.08.13
✎
18:05
|
Дано: Таблица продаж по периодам #ВТ2 [Период,Товар,Количество], уже свернутая по Период,Товар.
Требуется: получить таблицу с еще одним столбцом - КоличествоИтог, нарастающим итогом по периодам.
ТекстЗапроса:
SELECT
Продажи.Товар,
Продажи.Период,
Количество = MAX(Продажи.Количество),
КоличествоИтог = SUM(Итоги.Количество)
FROM #ВТ2 AS Продажи
LEFT JOIN #ВТ2 AS Итоги
ON (Продажи.Период >= Итоги.Период)
AND (Продажи.Товар = Итоги.Товар)
GROUP BY Продажи.Товар, Продажи.Период
Все получается замечательно, за исключением одного момента:
Мне нужно чтобы либо все продаваемые товары попали во все периоды
либо, если Количество по товару в каком-то периоде > 0, то он должен попасть во все последующие периоды.
Понимаю, что для первого варианта (все товары во все периоды), нужно сделать еще один JOIN, но никак не могу допереть, какой.
|
|
3
viktor_vv
23.08.13
✎
18:17
|
Тьфу ты. не так.
Выгрести товары в отдельную таблицу, выгрести периоды в отдельную таблицу, эти две таблицы full join, потом к полученной таблице left join #ВТ2.
|
|