我正在尝试编写一个查询,其中我需要获取/计数在同一日期注册的记录。但问题是在mysql结构中created_date字段有" datetime"结构
让我举个例子
如果2015-02-25有5人注册,2015-02-11有6人注册。它将输出为
Sno. Date. count
1) 2015-02-25 5
2) 2015-02-11 6
以下是附加数据库行的示例,以便更好地理解 http://i.stack.imgur.com/iPeLl.png
答案 0 :(得分:1)
SELECT date(created_at),count(*) FROM myTable GROUP BY date(created_at)
答案 1 :(得分:0)
您的查询应该是这样的:
select date(created_at) created_at, count(*) from TABLE
group by date(created_at)
在日期之间选择
select date(created_at) created_at, count(*) from TABLE
where date(created_at) >= '2015-02-11' and date(created_at) <= '2015-02-25'
group by date(created_at)
使用between:
select date(created_at) created_at, count(*) from Mytable
where date(created_at) BETWEEN '2015-01-05' AND '2015-02-25'
group by date(created_at)
参考:count()
答案 2 :(得分:0)
It might be the one that you expected.
SELECT
DATE_FORMAT(created_at,"%Y-%m-%d") AS Date,
COUNT(*) AS count
FROM table_name
GROUP BY DATE_FORMAT(created_at,"%Y-%m-%d")
ORDER BY created_at DESC;
此查询将计算每天注册的人数。当然,最新的注册将首先出现。