sql 按天分组统计问题 to_char() 函数

最近遇到一个问题,需要统计数据库中每一天的数据新增量,大家都知道可以使用 GROUP BY 对时间字段分组来实现统计每天的新增量的。关键是我我的数据库中时间字段存储的是 2016-12-16 14:21:33 这样的数据,如果直接使用这个时间字段来统计出来的是不准确的。以下原始sql语句:

SELECT pubtime, COUNT(pubtime) AS num
FROM qt_document
WHERE tid = 292
GROUP BY pubtime
ORDER BY pubtime DESC
LIMIT 10
sql 按天分组统计问题 to_char() 函数_第1张图片
原始sql语句结果图

那怎么才能通过时间字段就行按天分组呢?找了找sql的函数,发现有一个 to_char() 函数,可以实现这个功能。
SQL代码如下:

SELECT to_char(pubtime, 'yyyy-mm-dd') AS time, COUNT(pubtime) AS num
FROM qt_document
WHERE tid = 292
GROUP BY time
ORDER BY time DESC
LIMIT 10
sql 按天分组统计问题 to_char() 函数_第2张图片
使用to_char()函数的结果
  • 如果条件查询 可以使用下图方法

sql 按天分组统计问题 to_char() 函数_第3张图片
image.png

数据库:查询构造器
张煊博客

你可能感兴趣的:(sql 按天分组统计问题 to_char() 函数)