如图 怎么用sql server 把表1变成表2,表2的初始库存施上个月的月底库存
源于chatGPT仅供参考
为了将表1转换为表2,并在表2中计算期末数量为初始数量+生产入库数量+采购入库数量-销售出库数量-销售退货数量,可以使用 SQL Server 的 UPDATE 语句和子查询来实现。
假设表1的结构如下:
表1: Inventory
+----+--------+-------------+--------------+---------------+--------------+----------------+--------------+
| ID | 名称 | 日期初始数量 | 生产入库数量 | 采购入库数量 | 销售出库数量 | 销售退货数量 | 期末数量 |
+----+--------+-------------+--------------+---------------+--------------+----------------+--------------+
| 1 | 物品A | 100 | 50 | 30 | 20 | 10 | NULL |
| 2 | 物品B | 200 | 80 | 40 | 50 | 0 | NULL |
+----+--------+-------------+--------------+---------------+--------------+----------------+--------------+
要将表1转换为表2并计算期末数量,可以执行以下 SQL 查询:
```sql
UPDATE Inventory
SET 期末数量 = 日期初始数量 + 生产入库数量 + 采购入库数量 - 销售出库数量 - 销售退货数量
通过运行上述更新语句,将会将计算得到的期末数量值更新到表2的每一行记录中。
最后,通过以下查询验证结果:
SELECT * FROM Inventory
输出应如下:
表2: Inventory
+----+--------+-------------+--------------+---------------+--------------+----------------+--------------+
| ID | 名称 | 日期初始数量 | 生产入库数量 | 采购入库数量 | 销售出库数量 | 销售退货数量 | 期末数量 |
+----+--------+-------------+--------------+---------------+--------------+----------------+--------------+
| 1 | 物品A | 100 | 50 | 30 | 20 | 10 | 150 |
| 2 | 物品B | 200 | 80 | 40 | 50 | 0 | 270 |
+----+--------+-------------+--------------+---------------+--------------+----------------+--------------+
以上示例假设你已经有了名为 "Inventory" 的表,并且其结构和数据与示例相符。如果你的情况不同,请根据实际情况修改表名和列名等。
```
使用递归赋值试试
例 在信息系学生的视图中找出年龄小于20岁的学生
select Sno,Sname
from IS_Student
where Sage<20;
将期末数量设为计算列,sql server 中有计算列
例如:
create table tmp (
[count2] int,
[count1] int,
[count] as [count1]+[count2]);