我有两个表HouseKeeping与字段RoomNo,FloorNo,StockItem,Requirement和Stock表,字段Item,Available.I想要选择HouseKeeping表中的所有行和stock表中的需求总和。我使用此查询获取来自库存表的需求总和
SELECT SUM(Requirement) AS Requirement, StockItem
FROM HouseKeeping
GROUP BY StockItem
除此之外我还想要所有记录(从库存中选择*)。怎么做?请尽快回复。谢谢
答案 0 :(得分:3)
如果我理解正确的话:
JOIN
两个表如下:
SELECT h.stockItem, SUM(h.Requirement)
FROM HouseKeeping h
INNER JOIN Stock s ON h.stockItem = s.Item
GROUP BY h.stockItem
这将为您提供所有Requirement
值的所有总和,仅用于在另一个表Requirement
中具有stock
的项目。
如果要包含那些不匹配的项目,即:stock
表中没有项目。使用LEFT JOIN
代替INNER JOIN
与ISNULL(SUM(h.Requirement)
设置0而不是NULL
。