[英]Calculate running total with over(partition by order by) within update statment
我試圖在產品子組中創建一個運行總收入,並按順序遞增折扣。
我使用了以下查詢
Update Z_Discount_Tool1 Set Cum_Net_Revenue_Discount =
(Select Sum([Umsatz_Netto]) Over (Partition by [WUGR_act] Order by [Discount] From Z_Discount_Tool1)
但是,我收到以下錯誤消息
子查詢返回的值超過1。 當子查詢跟隨=,!=,<,<=,>,> =或子查詢用作表達式時,不允許這樣做。
我在代碼中找不到錯誤。 所以任何幫助都表示贊賞。 提前致謝!
這看起來像SQL Server。 您可以使用可更新的CTE:
with toupdate as (
select dt.*,
Sum([Umsatz_Netto]) Over (Partition by [WUGR_act] Order by [Discount]) as new_Cum_Net_Revenue_Discount
from Z_Discount_Tool1 dt
)
Update toupdate
Set Cum_Net_Revenue_Discount = new_Cum_Net_Revenue_Discount;
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.