我有两个表(Items
和 Item_Types
),我想在 Item_Types< 中的计算列中执行类似以下操作的公式
表:
SELECT SUM(Items.Qty_In_Stock) FROM Items WHERE Items.Item_Type = Item_Types.ID
但 Management Studio 不喜欢它。
我该怎么做?或者我的语法错误?我不太擅长 SQL。
谢谢
编辑:我认为我需要更具体。
一个ItemType
可以有许多Items
。
每个Item
都有一个Qty_In_Stock
字段。
我想获得所有Qty_In_Stock
字段的总和其中Items.Item_Type
= Item_Types.ID
-不仅仅是整列的总和。
干杯
最佳答案
假设您尝试显示每种商品类型的可用数量:
我建议创建一个显示此信息的 View :
您将需要“GROUP BY”项目类型。
CREATE VIEW Item_Types_Qty_In_Stock
AS
SELECT it.ID, SUM(i.Qty_In_Stock) AS QtyInStock FROM Items i
INNER JOIN Item_Types it ON i.Item_Type = it.ID
GROUP BY it.ID
GO
创建 View 后,您可以像查询表一样查询它:
SELECT * FROM Item_Types_Qty_In_Stock
关于SQL Server - 计算来自不同表的列总和,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5493290/