将数学函数添加到 SQL 查询

Add Math function to SQL Query

SQL 的新手,我正在尝试 运行 查询以提取我们所有的商品代码、批号和现有数量。

每个批号因调整有多个条目。我需要一种方法来 运行 查询我的查询并对其进行加法或减法以获得每个批次的实际手头数量,并且只显示负数的批次。我试过玩 SSRS,但我做不对。我正在使用 SQL 2008R2。

SELECT
  IMLAYER.ITEM_CODE
 ,IMMSTR.ITEM_DESC
 ,IMLAYER.LOT_NO
 ,IMLAYER.QTY_ON_HAND
FROM
  IMLAYER
INNER JOIN
  IMMSTR
    ON
    IMLAYER.ITEM_CODE = IMMSTR.ITEM_CODE
WHERE
  (IMLAYER.QTY_ON_HAND < 0);

我相信我理解的要求是正确的,但如果不理解请发表评论,我可以更新查询:

SELECT
    M.ITEM_CODE
   ,M.ITEM_DESC
   ,L.LOT_NO
   ,'SUM_OF_QTY_ON_HAND' = SUM(L.QTY_ON_HAND)
FROM
    IMLAYER L
INNER JOIN
    IMMSTR M
    ON L.ITEM_CODE = M.ITEM_CODE
GROUP BY
    M.ITEM_CODE
    ,M.ITEM_DESC
    ,L.LOT_NO
HAVING
    SUM(L.QTY_ON_HAND) < 0

HAVING 是您正在寻找的能够使用聚合函数进行过滤的技巧。