从UPDATE查询中获取更新的值

问题描述

| 我有一个UPDATE查询:
UPDATE   FKMS_GNST_Transaction_Details
   SET Received_Quantity=Received_Quantity+(
                       CASE
                       WHEN (@int_Updated_Qty)>=(GTD.Quantity-GTD.Received_Quantity)
        THEN GTD.Quantity-GTD.Received_Quantity
                       ELSE (@int_Updated_Qty)
                       END),@int_GNST_Reference_Id=GTD.Transaction_Detail_Id   
  FROM FKMS_GNST_Transaction_Details GTD
 INNER JOIN #tbl_transactions tmp
    ON tmp.Transaction_id=GTD.Transaction_id
   AND GTD.Item_id=tmp.Item_id
我想获取添加到Received_Quantity字段中的数量。也就是说,如果是
(@int_Updated_Qty)>=(GTD.Quantity-GTD.Received_Quantity) then GTD.Quantity-GTD.Received_Quantity
,否则是
@int_Updated_Qty
。 我们如何才能将此值(转换为变量或任何其他方式)?请帮忙。     

解决方法

        使用OUTPUT子句
UPDATE   FKMS_GNST_Transaction_Details
   SET Received_Quantity=Received_Quantity+(
                       CASE
                       WHEN (@int_Updated_Qty)>=(GTD.Quantity-GTD.Received_Quantity)
        THEN GTD.Quantity-GTD.Received_Quantity
                       ELSE (@int_Updated_Qty)
                       END),@int_GNST_Reference_Id=GTD.Transaction_Detail_Id   

--start gbn code
OUTPUT INSERTED.Received_Quantity
--end gbn code

  FROM FKMS_GNST_Transaction_Details GTD
 INNER JOIN #tbl_transactions tmp
    ON tmp.Transaction_id=GTD.Transaction_id
   AND GTD.Item_id=tmp.Item_id
输出结果可以去 到表中(实数,温度或变量) 给客户作为记录集 您不能直接分配给局部变量     

相关问答

依赖报错 idea导入项目后依赖报错,解决方案:https://blog....
错误1:代码生成器依赖和mybatis依赖冲突 启动项目时报错如下...
错误1:gradle项目控制台输出为乱码 # 解决方案:https://bl...
错误还原:在查询的过程中,传入的workType为0时,该条件不起...
报错如下,gcc版本太低 ^ server.c:5346:31: 错误:‘struct...