You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

SQL Server中如何对计算列DIF进行求和?

实现DIF列的求和操作

根据你的需求,提供三种常见的实现方式:

1. 直接计算总和(仅返回总和值)

直接用SUM()函数包裹DIF的计算公式,一步得到符合条件的所有行的DIF总和:

SELECT 
    SUM(IntCantInv - SalCantInv) AS Total_DIF
FROM 
    TABLA_MOVIMIENTO_INVENTARIOS 
WHERE
    ProductInv = 10001001008

2. 保留行数据同时显示总和

如果需要保留原有列和DIF列,同时在每行展示所有行的DIF总和,可以使用窗口函数:

SELECT 
    ProductInv, 
    IntCantInv, 
    SalCantInv, 
    (IntCantInv - SalCantInv) AS DIF,
    SUM(IntCantInv - SalCantInv) OVER() AS Total_DIF
FROM 
    TABLA_MOVIMIENTO_INVENTARIOS 
WHERE
    ProductInv = 10001001008

3. 通过CTE先计算DIF再求和

如果需要拆分逻辑,先单独生成DIF列再求和,可使用公共表表达式(CTE):

WITH InventarioDIF AS (
    SELECT 
        (IntCantInv - SalCantInv) AS DIF
    FROM 
        TABLA_MOVIMIENTO_INVENTARIOS 
    WHERE
        ProductInv = 10001001008
)
SELECT SUM(DIF) AS Total_DIF FROM InventarioDIF;

内容的提问来源于stack exchange,提问作者Bladimir Silva Toro

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.06.16 01:47:08