1

我想从数据库中删除将来没有提交字段的每一行。日期以这种方式存储:

2013 年 9 月 10 日

所以,在这个例子中,我想删除这条记录,因为它已经过期了。这就是我所在的位置:

$wpdb->query("DELETE FROM `$table_name` WHERE `Submission` < NOW()");

对我来说看起来不错,但是这个查询会删除表中的所有内容,而不仅仅是过去的行。

4

1 回答 1

5

该日期不是有效的日期时间。这是一个字符串。您需要STR_TO_DATE()先将其转换为日期,然后再对其进行日期数学运算。

DELETE FROM `$table_name` WHERE STR_TO_DATE(`Submission`, '%m/%d/%Y') < NOW()
于 2013-11-01T14:06:14.833 回答