Всем добрый вечер. Господа эксперты, подскажите решение проблемы.
Суть: Есть некая вьюха, в которой обозначены суммы по документам, поставщикам и группам. Из этой вьюхи нужно отобрать группировку - товарная группа - сумма. Проблема в том что она составлена не корректно и сумма по документу в целом дублируется по каждой строчке с товарной группой. В запросе нужно разделить сумму по конкретной группе, по числу встречающихся номеров документов (скрин приложил). Я вроде бы через временные таблицы решил. А можно как-то изящнее в одном запросе? А то мне тянуть в Excel на XP, а там временные таблицы не поддерживаются
create table #t([Номер документа] numeric(15, 0), [Поставщик] nvarchar(50), [Товарная группа] nvarchar(50), [Сумма] numeric(15, 2))
insert into #t([Номер документа], [Поставщик], [Товарная группа], [Сумма])
values
(1, 'Поставщик1', 'Brend1', 5000),
(2, 'Поставщик2', 'Brend33', 1000),
(2, 'Поставщик2', 'Brend47', 1000),
(2, 'Поставщик2', 'Brend15', 1000),
(3, 'Поставщик 5', 'Brend2', 2000),
(3, 'Поставщик 5', 'Brend3', 2000)
select [Номер документа] nd, count([Номер документа]) cn into #tt from #t group by [Номер документа]
select [Товарная группа], [Сумма]/#tt.cn
from #t
left join #tt on #t.[Номер документа] = #tt.nd
group by [Товарная группа],[Сумма],#tt.cn
drop table #t
drop table #tt