我对SQL查询确实很不好,但是我正在学习,所以请原谅这个问题。
这是我当前的查询:
SELECT TIMESTAMP, SUM( electricity ) AS electricity, `siteID` FROM table WHERE ( MONTH( `TimeStamp` ) =10) GROUP BY siteID
我的桌子看起来像:
######################################### # Id # SiteID # TimeStamp # Elecricity # # 0 # 100 # 10/08/2012 # 50 # # 1 # 98 # 10/08/2012 # 32 # # 2 # 100 # 10/09/2012 # 96 # # 3 # 94 # 10/09/2012 # 25 # # 4 # 100 # 10/10/2012 # 100 # # 5 # 100 # 10/11/2012 # 55 # #########################################
我要做的是总结每个站点每个月的所有日子,以便每个站点每个月有一个答案。因此,在此示例中,查询应返回siteID100的电费之和,因为它们都在第10个月,而对于siteID 98和94则相同。
谢谢
SELECT month(‘TIMESTAMP’), SUM( electricity ) AS electricity, siteID FROM table WHERE ( MONTH( TimeStamp ) =10) GROUP BY siteID, month(‘TIMESTAMP’)
siteID
TimeStamp
这将起作用。您必须考虑的一件事是该月不是唯一的。在这种情况下,2012年10月与2013年10月相同。您可能要为年份添加另一列。