我完全被这个问题难住了,已经尝试了几个小时但没有成功,希望有人可以帮忙。尝试构建一个 cron 脚本,每天运行一次,返回距离当前日期正好七天的行。
问题是,我的查询没有返回任何东西。没有错误消息,什么都没有(我知道最近7天数据库中有条目 - 我们每天大约会有7000条新条目,所以它们在那里!)我尝试用SELECT *并输出编辑日期进行测试,成功了,所以一切都正常,除了我的SQL脚本。
我引用的列(edit_date)的类型为“datetime”,格式为Y-m-d h-m-s。该列在创建和编辑时始终分配了datetime值。
function get_ad_sql($table){
$sql = "SELECT
*
FROM
".$table."
WHERE
edit_date = DATE_SUB(NOW(), INTERVAL 7 DAY)
";
return $sql;
}
然后调用函数并“尝试”回显主键:
$sqlAng = get_ad_sql('angebote');
$result = mysql_query($sqlAng);
while($row = mysql_fetch_array($result)){
echo $row['primary_key'];
}
我已经尝试了这里和在线上找到的所有DATE_SUB(NOW(),INTERVAL 7 DAY)的变化形式,包括CURDATE(),DATE_FORMAT(edit_date,'%m/%d/%Y'),但无法让任何东西正常工作。希望有人能帮助我!
SELECT DATE_FORMAT(edit_date),DATE_SUB(DATE_FORMAT(NOW()), INTERVAL 7 DAY)
这条语句会返回什么?它们看起来一样吗? - marnir