2012-04-05 6 views
0

私はこのようにデータを挿入する際に問題に直面しています。ストアドプロシージャを使用してデータをこのように挿入する方法SQL Serverのデータ挿入、最初の行の終了残高は次の行の開始残高である必要があります

enter image description here

INSERT INTO [dbo].tbl_Transaction     
     (    
      [FK_GameID] ,    
      [SpotID] ,    
      TransactionReason ,    
      TransactionType ,    
      TransactionAmount 
      --PrevAmountBalance, 
      -- CurrentBalance 
     )     
     SELECT tblTransaction.Row.value('@FK_GameID','BIGINT'),    
     tblTransaction.Row.value('@SpotID','SMALLINT'),    
     tblTransaction.Row.value('@TransactionReason','SMALLINT'),    
     tblTransaction.Row.value('@TransactionType','Varchar(50)'),    
     tblTransaction.Row.value('@TransactionAmount','MONEY') 
     [email protected], 
     -- (@OpeningBalance-tblTransaction.Row.value('@TransactionAmount','MONEY')) 
     FROM @TransactionTable.nodes('/row') AS tblTransaction(Row) 
+3

そして、何の問題があります? –

+0

私はあなたが質問を明確にする必要があると思います。 – Paaske

+0

ありがとう、どのように最初の行の残高を次の行の残高として挿入する必要がありますか? –

答えて

0
create table #balances(
id int not null identity(1,1), 
opening_balance int, 
closing_balance int, 
t_type varchar(50)) 

insert into #balances values (100 , 100 , 'start') 

(あなたはこれを持っていない場合は、NULLで対処する必要があります)テーブルを開始するには、クエリ:

insert into #balances values(
(select top 1 closing_balance from #balances order by id desc), 
300, --new value 
'credit') 
+0

私はxmlを使用してデータを挿入し、コードを添付しています。 –

関連する問題