Vladimir Kozlov wrote: > Задача - сборка сумм по древовидному справочнику. ... > Соответственно, агрегаты по отдельным статьям получаются простеньким > запросом с group by, а вот как получить "агрегаты агрегатов" по узлам > дерева? Хочется свести к минимуму шорканье по таблице проводок (то есть
Из первоначального справочника генерим таблицу связей, которая для каждого элемента дерева хранит список всех его вышестоящих предков, вплоть до корня, и содержит дополнительное поле - уровень этого предка в дереве. Ключом служит ID элемента и уровень предка. Делаем join таблицы проводок с этой таблицей по ID элемента и заданному уровню детализации (параметр запроса). И группируем по полученному ID предка.