我想获取一个类别项目列表,并显示与这些类别相关联的总金额。我有"金额" "交易中的字段"表,我想将其链接到类别表。
这就是我的表格:
所以要获得我的"金额"字段到类别,我将不得不在它们之间传递某个公共列。我在SubCategory master中有CategoryID,在item master中有subcatid,在事务中有类似的itemid。
早些时候,当我使用交易日期对金额进行分组时,流程进展顺利:
SELECT TransactionDate, SUM(Amount) FROM transaction GROUP BY MONTH(TransactionDate)
现在我使用categoryname对其进行分组的问题是,所有数量似乎都是= 50,而数据库中的数量仍然不同。我知道这真的很傻,但我对编程比较陌生,不知道如何恰当地使用逻辑。
SELECT categorymaster.CategoryName, transaction.Amount
FROM categorymaster
INNER JOIN subcategorymaster
INNER JOIN itemmaster
INNER JOIN transaction
GROUP BY categorymaster.CategoryName
答案 0 :(得分:0)
此答案假设您在每个表中的主键名为“ID”。你没有提供这些信息。
SELECT categorymaster.CategoryName, sum(transaction.Amount)
FROM categorymaster
INNER JOIN subcategorymaster
ON subcagetorymaster.CategoryId = categorymaster.ID
INNER JOIN itemmaster
ON itemmaster.SubCatId = subcategorymaster.ID
INNER JOIN transaction
ON transaction.ItemId = itemmaster.ID
GROUP BY categorymaster.CategoryName