Суммируйте число по предыдущему номеру строки, используя оператор выбора - PullRequest
0 голосов
/ 19 октября 2019

Предположим, есть два столбца с именами SrNo и Salary. Мне нужен третий столбец, результат которого будет выглядеть следующим образом: -

SrNo - Salary - Result
1    - 1000   - 1000
2    - 150    - 1150
3    - 200    - 1350
4    - 300    - 1650
5    - 250    - 1850

Таким образом, он будет увеличиваться путем добавления предыдущего значения столбца к текущему значению и должен бытьпросто используя операторы select, не используя никаких циклов над ним.

Ответы [ 2 ]

3 голосов
/ 19 октября 2019

Вы ищете совокупную сумму.

Самый простой способ:

select t.*, sum(salary) over (order by srno) as running_salary
from t;

При использовании order by.

оконная рама не требуется.
2 голосов
/ 19 октября 2019

Используя новый набор данных, вы можете достичь этого с помощью оконной функции и ROWS BETWEEN:

SELECT SrNo,
       Salary,
       SUM(Salary) OVER (ORDER BY SrNo
                         ROWS BETWEEN UNBOUNDED PRECEDING AND CURRENT ROW) AS Result
FROM YourTable;
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...