【问题标题】:When Add new purchase I want to update Quantity in another table添加新购买时,我想在另一个表中更新数量
【发布时间】:2021-01-18 11:22:53
【问题描述】:

我有 tblPurchase 表和 tblProductStock 表。当我将新记录添加到 tblPurchase 表时,会自动将该值添加到 tblProduct Stock 表中。没关系。但是当我添加具有相同 ItemCode 数量的新产品时,它将变为 25 + 15 = 40。它也很好。但是仍然没有删除第一条记录。因此,在我的 totalStock 表中显示 40 + 15 = 55。那个输出是错误的。我只想要40个。 此 Total Stock Details 显示错误的输出 40 + 15 = 55。我需要 25 + 15 = 40

我想如果 Itemcode 已经存在于表中,我想更新 Quantity。如果没有任何带有新记录的项目,我想将该数据插入到 tblproductstock 表中。

我想更新该表而不是插入每条新记录。并根据itemcode汇总数量。

请帮我解决这个问题。 谢谢!

【问题讨论】:

  • 用您正在使用的数据库标记您的问题。编辑您的问题,使代码为 text。这让其他人更容易提供帮助。

标签: c# sql database


【解决方案1】:

你应该这样做:

SELECT MAX(ItemName) ItemName,
   ItemCode,
   SUM(Quantity) Quantity
INTO #tmp
FROM tblPurchase
GROUP BY itemCode;

UPDATE tblProductStock
SET Quantity=#tmp.Quantity
FROM #tmp WHERE tblProductStock.ItemCode=#tmp.ItemCode

INSERT INTO tblProductStock
    (
        ItemName,
        ItemCode,
        Quantity
    )
SELECT  ItemName, ItemCode, Quantity FROM #tmp WHERE ItemCode NOT IN (SELECT ItemCode FROM tblProductStock)

DROP TABLE #tmp;

希望对你有所帮助。

【讨论】:

  • 如何编写更新采石场。你能告诉我吗
  • 当我使用此代码时,数据被插入到 tblPurchase 表中。但不是 tblProductStoct 表。你能告诉我这是为什么吗?谢谢
  • 当我向 tblPurchase 表添加新记录时,不会向 tblProduct Stock 插入数据。为什么会这样
  • @SandanuwanDharmarathna 你确定吗?很明显,Insert into tblProductStock 将插入 tblProductStock。你能完全分享查询吗?
  • 我回滚了上次编辑,因为它完全改变了问题。
猜你喜欢
  • 2023-03-27
  • 1970-01-01
  • 2020-04-08
  • 2021-07-10
  • 1970-01-01
  • 2011-09-01
  • 1970-01-01
  • 1970-01-01
  • 2018-04-19
相关资源
最近更新 更多