我想删除未来提交字段的数据库中的每一行。日期以这种方式存储:
2013年9月10日
所以,在这个例子中我想删除这条记录,因为它已经过期了。这就是我的地方:
$wpdb->query("DELETE FROM `$table_name` WHERE `Submission` < NOW()");
对我来说很好,但是这个查询会删除表中的所有内容,而不仅仅是过去的行。
答案 0 :(得分:5)
该日期不是有效的日期时间。它是一个字符串。您需要使用STR_TO_DATE()
将其转换为日期数学之前的日期。
DELETE FROM `$table_name` WHERE STR_TO_DATE(`Submission`, '%m/%d/%Y') < NOW()