2012-07-10 75 views
0

我有3列的表,列1与日期和Column2存储点是什么,但一些随机数在1到9和列3,其中每个单元格中有一些唯一的电子邮件地址。Mysql Group按日期

现在我想添加最近5天按日期分组的点。 这就是说,如果我第一天有3行,第二天有1行,第三天有3行,第四天有两行& 5我应该得到按日期分组的5行5个点的总和天。

输入

日期                                         电子邮件

2012-07-01                                     [email protected]
2012-07-01                                     [email protected]
2012-07-01                                     [email protected]

  2012-07-02                                   d @样品。与

  2012-07-03                                   [email protected]
2012-07-03                                       [email protected]
2012-07-03                                       [email protected]

  2012-07-04                                   [email protected]
2012-07-04                                     [email protected]

  2012-07-05                                   [email protected]
2012-07-05                                     b @样品。COM

输出

日期                     点数

  2012-07-01       2012-07-02           2012-07-03         2012-07-04           2012-07-05        

请给我一个MySQL查询以上。

+1

自己这样做,可以学习一些简单的MySQL查询 – Khaleel 2012-07-10 12:26:31

+0

与QuickSilver的同意!你需要它。另外,不要采取保留的sql关键字,就像您将'Date'作为列名称一样。 – manurajhada 2012-07-10 12:28:15

+4

+1,只是为了不杀死你在StackOverFlow上的体验。我不同意通过(尽管)简单的sql问题来敲击某人。所以你们给他们投票,不要提供任何关于从哪里开始的点击或建议? – 2012-07-10 12:37:37

回答

2
select `Date`,sum(`Points`) from my_table group by `Date`; 
+0

让我知道我是否可以做到这一点,如果我有第3列有不同的价值 – aprilleocean 2012-07-10 12:33:30

+0

那么你想在这种情况下?那么查询将返回多行。 – manurajhada 2012-07-10 12:35:28

+1

@aprilleocean您必须明确提及如何使用不同数据对其他列进行分组(或不分组)。机器应该如何处理这样的情况并不明显 – 2012-07-10 12:48:52

0
select [Date],SUM(Points) 
from myTable1 
group by [Date] 
+0

让我知道如果我有第三列,每个单元中有不同的值,我是否可以这样做 – aprilleocean 2012-07-10 12:34:29

0

你可以这样做:

SELECT date, SUM(points) AS points 
FROM tbl 
WHERE date > CURDATE() - INTERVAL 5 DAY 
GROUP BY date 
1
select Date,sum(Points) from my_table group by Date;