Добро пожаловать в форум, Guest  >>   Войти | Регистрация | Поиск | Правила | В избранное | Подписаться
Все форумы / Microsoft SQL Server Новый топик    Ответить
 While - Select  [new]
vuginet
Member

Откуда:
Сообщений: 30
Всем привет!

А можно в MS SQL как-то While select использовать?

Типа этого:


Оплата=SUM(таблица оплат)

while Оплата> 0
begin
case
when (Оплата > 0) and (Оплата > Долг)

then Долг=0

else Долг=Долг - Оплата

Оплата=Оплата - Долг
end
end


мораль такова, что

сумма всех оплат=1800

график 3-х месячный

1800 - 700 (1-ый месяц долг погашен) = 1100
1100 - 700 (2-ой месяц долг погашен) = 400

400 - 700 (3-й месяц долг составляет )= - 300
18 мар 19, 16:48    [21836239]     Ответить | Цитировать Сообщить модератору
 Re: While - Select  [new]
Руслан Дамирович
Member

Откуда: Резиновая нерезиновая
Сообщений: 940
vuginet,

SUM( [Оплата] ) OVER ( PARTITION BY ... ORDER BY ... ROWS BETWEEN ( [1..N/UNBOUNDED] PRECEDING | CURRENT ROW ) AND ( [1..N/UNBOUNDED] FOLLOWING | CURRENT ROW )
18 мар 19, 16:51    [21836248]     Ответить | Цитировать Сообщить модератору
 Re: While - Select  [new]
Владислав Колосов
Member

Откуда:
Сообщений: 7396
vuginet,

похоже на расчет нарастающего итога, описано в FAQ, если что.
18 мар 19, 16:54    [21836256]     Ответить | Цитировать Сообщить модератору
Все форумы / Microsoft SQL Server Ответить