通过使用strtotime检查日期来更新mysql表行

时间:2018-05-07 13:59:32

标签: php mysql

如果当前日期等于或大于数据库中的日期,我想更新行/行。 例如:

$sql = "UPDATE ca_dreams SET d_matured_status=1 WHERE d_pay_date='"
       . time() . "'";

如何使用d_pay_datestrtotime转换为时间,然后与time()进行比较。

请注意我希望此更新尽可能多的行。

1 个答案:

答案 0 :(得分:2)

time()是一个PHP函数,当MySQL具有同样可用的函数时,您不需要涉及PHP。

您需要DATE()d_pay_date列转换为日期(如果它已经是特定日期而不是时间戳,您不需要此功能),然后检查CURDATE()。然后与<=(小于或等于)的日期进行比较。

$sql = "UPDATE ca_dreams SET d_matured_status=1 WHERE DATE(d_pay_date) <= CURDATE()":