|
SELECT
DISTINCT 名称,
(ISNULL((select SUM(A.数量) from 库存表 A WHERE A.名称 = 库存表.名称 AND A.状态='进货'), 0)
-
ISNULL((select SUM(A.数量) from 库存表 A WHERE A.名称 = 库存表.名称 AND A.状态='销售'), 0)) AS 库存数量
FROM
库存表
解决方法二(Access):
SELECT 名称,Sum(IIF(状态='进货',1,-1) * 数量) as 库存数量 From 库存表 Group By 名称
解决方法三(Access):
SELECT 名称,Sum(IIF(状态='进货',数量,0)-IIF(状态='销货',数量,0)) as 库存数量 From 库存表 Group By 名称
博客提供了库存表库存数量的查询解决方法。方法一是通用SQL,用SELECT DISTINCT结合子查询计算;方法二和三适用于Access,分别通过Sum结合IIF函数及不同的IIF组合来计算库存数量,均按名称分组。
3505





