首页 > 解决方案 > 根据另一列减去同一列的两个值并将结果保存在新行中

问题描述

我在 SQL Server 中有以下表格行。

在此处输入图像描述

现在,我想要这样的最终结果(可用数量 =(总数量 - 出租数量)其中YYYYMM和书名相同)

在此处输入图像描述

标签: sqlsql-server

解决方案


要生成 2 个必需的行,您可以使用GROUP BY查询

SELECT   t.YYYYMM, STATUS = 'AVAILABLE', t.BOOKNAME,
         SUM (CASE WHEN t.STATUS = 'TOTAL' THEN +t.QUANTITY ELSE -t.QUANTITY END) AS QUANTITY
FROM     a_table t
GROUP BY t.YYYYMM, t.BOOKNAME

您可以将其插入表中

或者

可以在需要显示时UNION ALL在查询中使用SELECT


推荐阅读