怎么用sql server 把表1变成表2
表2的初始库存都是上个月的月底库存
月底数量=初始数量+生产入库数量+采购入库数量-销售出库数量-销售退货数量
这是一张简化了的excel表,跟sql没有一毛钱关系,也根本不符合sql表的要求
说白了这东西根本录不进数据库里
你的这个用游标去实现,首先是查询所有的数据,然后取第一行数据作为基本数据,后面按照你的逻辑进行计算即可。
游标可以参考https://blog.csdn.net/qq_41827511/article/details/124813672的做法
可以使用以下步骤将表1转换为表2:
CREATE TABLE 表1 (
初始数量 INT,
生产入库数量 INT,
采购入库数量 INT,
销售出库数量 INT,
销售退货数量 INT
);
INSERT INTO 表1 (初始数量)
SELECT t2.月底库存 FROM 表2 AS t2
WHERE t2.日期 = DATEADD(MONTH, -1, GETDATE())
UPDATE 表1
SET 初始数量 = 初始数量 + 生产入库数量 + 采购入库数量 - 销售出库数量 - 销售退货数量
这样,表1就被成功转换为表2,其中初始数量列已经包含上个月的月底库存。
请注意,以上代码只提供了转换过程的基本框架。具体的实现可能需要根据实际情况进行调整。例如,你可能需要添加日期条件来确保只查找上个月的数据,或者将表名和列名替换为你实际使用的名称。