我想使用MySQL数据库中的数据创建某一天的项目图表。我有查询
SELECT * FROM activities
WHERE timestamp BETWEEN UNIX_TIMESTAMP() - 24 * 3600 * 7
AND UNIX_TIMESTAMP() - 24 * 3600 * 6
从x天前选择项目(其中7和6可以变化以选择日期),但由于某种原因它在我的数据库中返回一个空集。
答案 0 :(得分:2)
尝试以下:
SELECT * FROM activities
WHERE date(timestamp) between start_date
and DATE_SUB(start_date,interval x day))
将start_date
替换为startdate
和x with interval
答案 1 :(得分:1)
检查警告(显示警告)。它可能看起来像这样:
等级:警告 代码:1292 消息:日期时间值不正确:第13行“timestamp”列的“1332194471”
如果是DATETIME或TIMESTAMP列:
SELECT * FROM活动WHERE DATE(时间戳)= DATE(NOW() - INTERVAL x DAY);
答案 2 :(得分:0)
SELECT * FROM 'activities' WHERE 'timestamp'< UNIX_TIMESTAMP() - 24 * 3600 * 7 AND 'timestamp'> UNIX_TIMESTAMP() - 24 * 3600 * 6
我真的不确定,但它可能有用。