我在数据库中有以下表格。我希望能够获得值列的总和,但仅基于日期。因此,如果今天是1月1日我只想要每个jan 1st作为日期的价值的总和。我使用以下内容:
SELECT SUM(value) AS value_today FROM table_value GROUP BY date ORDER BY date DESC
唯一的问题是它只返回12月22日的总和,并且没有任何新内容输入数据库。
+-------+---------+------------+
| ID | value | date |
+-------+---------+------------+
| 1 | 3 | 2011-12-22 |
| 2 | 2 | 2011-12-22 |
| 3 | 4 | 2011-12-22 |
| 4 | 2 | 2012-01-01 |
+-------+---------+------------+
答案 0 :(得分:3)
SELECT SUM(value) AS value_today FROM table_value WHERE date = CURDATE()
这样的东西?
如果不是,也许你可以改写你的问题。
答案 1 :(得分:3)
SELECT SUM(value) AS value_today FROM table_value WHERE date = DATE(NOW())
通过这种方式,您只能检索今天的数据总和。
答案 2 :(得分:1)
SELECT sum(value), date FROM table WHERE date = 2012-01-01 ORDER BY date DESC