2013-06-19 65 views
1

我在数据库中具有下表。我希望能够获得价值列的总和,但仅基于日期。要根据另一列中的日期对列中的值进行求和并对其进行分组

+-------+---------+------------+ 
| ID | value | date  | 
+-------+---------+------------+ 
| 1 | 3  | 2011-12-22 | 
| 1 | 2  | 2011-12-22 | 
| 1 | 4  | 2011-12-22 | 
| 1 | 2  | 2012-01-01 | 
+-------+---------+------------+ 

这应该是

+-------+---------+------------+ 
| ID | value | date  | 
+-------+---------+------------+ 
| 1 | 9  | 2011-12-22 | 
| 1 | 2  | 2012-01-01 | 
+-------+---------+------------+ 

谁能帮助?

回答

2
Select id,sum(`value`) `value` , DATE(`date`) from table_name group by DATE(`date`); 
+1

@RaduGheorghiu他们是具有特殊意义的关键字。您不应该使用关键字作为标识符。 – NINCOMPOOP

+0

此查询给出了与原始表相同的结果 – vikky

+0

日期有与之相关的时间戳,我必须根据日期进行总结 – vikky

0
SELECT ID, SUM(value), date FROM table_name GROUP BY date; 
+0

不幸运:(它给了我错误缺少的表达式。我在oracle中使用它 – vikky

相关问题