【发布时间】:2010-05-14 04:03:40
【问题描述】:
我不是很擅长sql,一般我用php来完成我的复杂任务,但是在这个任务中,有很多数据,所以使用php来统计帖子很慢。所以我想要一个按日期计算帖子的sql,但我在表中的日期列是php的时间戳(int)。我将创建帖子编号x日期图表
【问题讨论】:
我不是很擅长sql,一般我用php来完成我的复杂任务,但是在这个任务中,有很多数据,所以使用php来统计帖子很慢。所以我想要一个按日期计算帖子的sql,但我在表中的日期列是php的时间戳(int)。我将创建帖子编号x日期图表
【问题讨论】:
由于您不了解 SQL,您似乎对术语有很好的掌握。
这样的事情应该可以工作:
SELECT FROM_UNIXTIME(post_date, '%Y %D %M') AS POST_DATE,
COUNT(post_id) AS POST_COUNT
FROM posts
GROUP BY POST_DATE
【讨论】:
不确定 MySQL,但在 postgres 中,您可以执行类似的操作(对于至少包含 id 和 php_timestamp 列的名为 posts 的表):
SELECT COUNT(id), php_timestamp - (php_timestamp % 86400) AS base_date
FROM posts
GROUP BY php_timestamp - (php_timestamp % 86400)
当然,强烈建议在表达式 php_timestamp - (php_timestamp % 86400) 上创建一个索引(但不确定是否可以在 MySQL 中创建一个)。这按 UTC 日期分组。
【讨论】: