Хабр Курсы для всех
РЕКЛАМА
Практикум, Хекслет, SkyPro, авторские курсы — собрали всех и попросили скидки. Осталось выбрать!
Алгоритм перебора может написать кодом или псевдокодом? Есть предположение что использовался двойной цикл и сложность алгоритма n^2. Но данные имеют структуру поэтому можно заменить на алгоритм сложности n*log n
шринк и другие необходимые процедуры
create table #Cells (Cell char(1), Qty int)
insert into #Cells (Cell, Qty) values ('A', 10)
insert into #Cells (Cell, Qty) values ('B', 1)
insert into #Cells (Cell, Qty) values ('C', 5)
insert into #Cells (Cell, Qty) values ('D', 8)
select
t1.Cell,
t1.Qty,
ISNULL(sum(t2.Qty),0)+1 as OrderBottom,
ISNULL(sum(t2.Qty),0)+t1.Qty as OrderTop
from #Cells as t1
left join #Cells as t2
on t1.Cell > t2.Cell
Group by
t1.Cell,
t1.Qty
drop table #Cells
«Распределение в запросе» или «избавляемся от перебора»