如何使用MySQL中另一个表的属性按查询进行分组



我有一张表

我有一张Month的表,结构如下,

1. MonthID (Primary Key) 
2. MonthName

我有Date的另一个表,具有以下结构,

1. DateID (Primary Key) 
2. Day 
3. Month (Foreign Key, references to MonthID in Month Table)
4. Year

最后,有一个名为Sales,的表

1. Date (Foreign key, references to DateID in Date Table) 
2. SaleItem
3. SaleAmount

我需要的查询是每月完成的销售额计数

因此,我想要的是获得Sales Table行的计数,但用MonthID(这是日期表中的一个属性(对这些计数进行分组,并从基本的month表中提取月份的名称。

预期的结果与此类似,

销售额
一月15
二月0
三月221
四月11

使用下面的查询,您可以根据上面的获得结果

SELECT "Month"."MonthName" AS "Month", count("Sales".*) AS "Sales" FROM "Month"
LEFT JOIN "Date" ON "Date"."Month" = "Month"."MonthID"
LEFT JOIN "Sales" ON "Sales"."Date" = "Date"."DateID"
GROUP BY "Month"."MonthID", "Month"."MonthName"
ORDER BY "Month"."MonthID" ASC;

最新更新