如何获取特定日期的所有时间戳? PHP

时间:2012-06-22 13:48:10

标签: php mysql sql datetime timestamp

我在MySQL数据库中有行,每个行都有一个时间戳值。 (即1340296188)

我正在尝试查找过去7天的所有条目。我知道如何查询在过去7天内查找所有内容,例如:

$lastweek = time() - 604800;
$results = mysql_query("SELECT * FROM table WHERE timestamp > $lastweek");

但是,我需要能够每天分开。我该怎么做这个查询?我不知道如何从上面的结果中找出哪些具体日期。

2 个答案:

答案 0 :(得分:4)

我相信有更多的方法可以做到这一点。这是一个:

SELECT * 
FROM table 
WHERE timestamp > CURRENT_DATE - INTERVAL 1 WEEK
GROUP BY DAY(timestamp)

答案 1 :(得分:2)

你已经在那里了;您只需解析$results中的时间戳字段。

一天是(60 * 60 * 24)秒,因此您可以将每行的时间戳字段除以86400,将其转换为整数,结果是此条目发生前的天数。

对于数据集中的每一行:

$daysAgo = int($row["timestamp"] / 86400);