【发布时间】:2016-01-10 22:31:35
【问题描述】:
我有下表并使用 SQL Server 2008
Tbl_TRNSACTION
RowNum Transaction Type InQty OutQty InPrice
1 IN 20 0 20
2 IN 50 0 40
3 OUT 0 10 -
4 IN 10 0 30
我希望输出格式如下
如果 TransType 是 IN,
然后将 (InQty*InPrice) 添加到 CumulativeStockVal
和 StockRate = (CumulativeStockVal / Balance)。
如果事务类型为 OUT,
然后从 CumulativeStockVal 中减去 (OutQty*previous(StockRate))。
RowNum TransType InQty OutQty Balance CumulatveStockVal StockRate
1 IN 20 0 20 400 20
2 IN 50 0 70 2400 34.285
3 OUT 0 10 60 2057.15 34.285
4 IN 10 0 70 2357.15 33.673
请回复。谢谢。
【问题讨论】:
-
你试过了吗?有问题吗?这些值是如何计算的?这些小数是从哪里来的?要求人们在不付出努力的情况下为您编写代码是不好的。让他们猜你真正想要什么不太礼貌
-
请发布到目前为止您为获得此结果所做的尝试。
-
Tbl_TRANSACTION中是否还有其他列?表格本质上是无序的,所以如果你想谈论“前”行,我们现在需要如何定义它——通常是通过使用一个或多个列来定义一个顺序。这里没有明显的候选人。 -
信息不足,最终每一列都是相互依赖的。修改你的问题。其次你使用的是哪个版本。
标签: sql-server-2008