计算日期在DB中的次数

时间:2010-01-02 16:30:34

标签: sql google-visualization

我正在寻找一些使用谷歌图表API创建图表的帮助

我对如何编写代码有所了解,但我需要帮助将psuedo转换为实际代码。

我有一个包含网站用户的数据库。每个用户都有一个他们加入的日期。我想计算每个日期加入的人数,然后将其放入Google图表API网址的字符串中。

我正在考虑这样的事情,但需要一些帮助:

Set up DB connection etc...

select date from site_users, count and group by date_joined under column called 'number', as to give a 2 column table result -> Date and Number of joins.

while (sql query){
    $date .= $row['date_joined']."|";
    $number .= $row['number']."|";
}

construct google chart url
$url = "www.google.cometc...".$date."&".$number;

<img src=".&url." alt="chart" />

一些帮助会很棒,我认为我努力的部分是sql语句。

三江源

2 个答案:

答案 0 :(得分:2)

这是正确的SQL,但您必须修复特定的字段名称:

select date,count(*) as number
from site_users
group by date;

如果日期字段是时间戳或包含时间的其他类型,则需要截断(在MySQL中):

select DATE_FORMAT(date,'%Y-%e-%d') as date,count(*) as number
from site_users
group by DATE_FORMAT(date,'%Y-%e-%d');

答案 1 :(得分:1)

SELECT date, count(*) as users FROM site_users GROUP BY date;

或者如果你需要WHERE:

SELECT date, count(*) as users FROM site_users
    WHERE date > '2008-01-01'
    GROUP BY date;

GROUP BY是重要的组成部分。它会生成汇总报告。你的计数()是每个GROUP中的行数(在这种情况下,是日期)。