Одна из самых популярных алгоритом на уровень чуть выше новичка
Необходимо использовать левое соединение таблицы с самой собой.
Нарастающий итог в запросе
ВЫБРАТЬ Обороты.Период, Обороты.Номенклатура, Обороты.Количество ПОМЕСТИТЬ ВТдвижения ИЗ РегистрНакопления.Обороты КАК Обороты ; //////////////////////////////////////////////////////////////////////////////// ВЫБРАТЬ Движения.Период КАК Период, Движения.Номенклатура КАК Номенклатура, Движения.Количество, СУММА(ТеЖеДвижения.Количество) КАК КоличествоНарастающийИтог ИЗ ВТдвижения КАК Движения ЛЕВОЕ СОЕДИНЕНИЕ ВТдвижения КАК ТеЖеДвижения ПО Движения.Период >= ТеЖеДвижения.Период //ищем движения из той же самой таблицы, //предшествующие данному, чтобы их просуммировать И Движения.Номенклатура = ТеЖеДвижения.Номенклатура //чтобы нарастающий итог по разным номенклатурам не перемешался СГРУППИРОВАТЬ ПО Движения.Период, Движения.Номенклатура, Движения.Количество УПОРЯДОЧИТЬ ПО Номенклатура, Период
Комментариев нет:
Отправить комментарий