У меня есть таблица Главной книги в базе данных (SQL Server 2005), со столбцами (ID, Insertion_Date, Invoice_No, Debit, Credit и Balance).Обновление нескольких строк с разными значениями в одном запросе
Когда пользователь добавляет некоторые записи, ему будет дано заполнить счет-фактуру нет. и сумму (Дебет), так что баланс будет автоматически добавлен как Balance = Balance - Amount. Во всяком случае, после нескольких строк для одного и того же счета, пользователь решил отредактировать сумму за предыдущую строку. После редактирования суммы баланс той же строки и других строк должен измениться автоматически. (As: отредактированная строка будет принимать новую сумму, например: Balance = Balance - newamount, а остальные строки будут брать новый баланс и суб. С их текущей суммой).
Пример: Таблица GL
ID Date Invoice_No Debit Credit Balance
---------------------------------------------------------
1 19/3/2014 123456 0 400 400
2 19/3/2014 123456 100 0 300
3 20/3/2014 123456 50 0 250
4 21/3/2014 123456 100 0 150
5 22/3/2014 123456 50 0 100
После редактирования строки с ID 2 и делая замену на дебетовой колонке (вместо 100, что делает его 50) только, остальные строки будут осуществляться таким образом, результат должен выглядят так.
ID Date Invoice_No Debit Credit Balance
---------------------------------------------------------
1 19/3/2014 123456 0 400 400
2 19/3/2014 123456 50 0 350
3 20/3/2014 123456 50 0 300
4 21/3/2014 123456 100 0 200
5 22/3/2014 123456 50 0 150
Любая идея, как я могу управлять этим с помощью одного запроса. Является новым в SQL и нуждаюсь в помощи. Пожалуйста, запросите дополнительную информацию. если нужно.
Вы так же отмечаете это как sql ... – Bogdan
рассмотрите возможность использования триггера для этого. Когда вы обновляете какую-то сумму, триггер обновляет каждую другую строку – fnightangel
возможный дубликат [Рассчитать текущее количество в SqlServer] (http://stackoverflow.com/questions/860966/calculate-a-running-total-in-sqlserver) –