0

次の要件を持つ sql スクリプトを作成しています。この累計列は、Transaction_datetime が表示されている Asset_id の Transaction_datetime 以下であるすべての Asset_Transactions の Units を合計することによって計算されます。私はそれを達成しました、そしてそれはうまくいっていると思います。

ただし、私の 2 番目の要件は次のとおりです。

2) その日付の単位の値を計算します。これは、各 asset_transaction の日付とその特定の資産の Unit_Price テーブルから Sell_unitPrice を取得し、追加された単位数 (「現在の合計」) で乗算します。ステップ2で苦労しています

:-----------------------------------------------------

私がこれまでに書いたコードを見てください。どうもありがとう

   set nocount on

   go



     declare mla_exceptions scroll cursor for
                 select distinct mla.asset_id  
from    asset_transaction mla
go



Print 'asset_id, Amount, Transaction Name, Total Units, Transaction Datetime'




declare @ml_asset double precision

open mla_exceptions



fetch first mla_exceptions


              into @ml_asset  

              while (@@sqlstatus = 0)

              begin  
              select    mla.asset_id , ',',
               -- mla.transaction_datetime, ',',
              mla.amount, ',',
              tt.name, ',',
             (select sum (units) from asset_transaction where transaction_datetime <= mla.transaction_datetime  and asset_id = @ml_asset  and status = 'A' ) 'Running Total Units', ',',
              transaction_datetime


from    asset_transaction mla noholdlock


Left outer join transaction_type tt on tt.transaction_type_id = mla.transaction_type_id
  where   mla.asset_id = @ml_asset


  order by mla.asset_id

  fetch next mla_exceptions
 into @ml_asset 
end

close mla_exceptions

deallocate cursor mla_exceptions

go

========================= どうもありがとう。

4

0 に答える 0