MySQL 选择 7 天前的行
我完全陷入了困境,尝试了几个小时但没有成功,希望有人能帮忙。尝试构建一个 cron 脚本以每天运行,该脚本返回比当前日期早 7 天的行。
问题是,我的查询没有返回任何内容。没有错误混乱,什么都没有(我知道数据库中有过去7天的条目 - 我们每天收到大约7000个新条目,所以它们就在那里!我已经尝试了SELECT *并成功回显了编辑日期,因此除了我的SQL脚本之外,一切都可以正常工作。
我引用的列(edit_date)是类型“datetime”,格式为Y-m-d h-m-s。此列始终具有在创建和编辑时分配的日期时间值。
function get_ad_sql($table){
$sql = "SELECT
*
FROM
".$table."
WHERE
edit_date = DATE_SUB(NOW(), INTERVAL 7 DAY)
";
return $sql;
}
调用函数并“尝试”以回显primary_key:
$sqlAng = get_ad_sql('angebote');
$result = mysql_query($sqlAng);
while($row = mysql_fetch_array($result)){
echo $row['primary_key'];
}
我已经尝试了DATE_SUB(NOW(),间隔7 DAY)的所有变体,包括CURDATE(),DATE_FORMAT(edit_date,'%m/%d/%Y'),我可以在这里和网上找到,但无法让任何东西工作。希望有人能帮助我!