sql / php返回超过2周的行

时间:2017-01-03 14:40:02

标签: php mysql sql database

因此,经过3个小时的睡眠并经历每一篇文章/问题都有这个但我根本无法让它发挥作用。我的日期列是Y-m-d格式,我想要获得的是所有可用日期过去2周的行,如表中所示。

这是我得到的最接近的,但它仍然没有返回所有行。

$date = date('Y-m-d',time()+(14*86400));
SELECT * FROM table_claims WHERE date_available > '$date'

解决这个问题会让我的日子变得更轻松,谢谢!

2 个答案:

答案 0 :(得分:1)

使用

$date = date('Y-m-d',time()-(14*86400));

将在两周前生成$ date。

您还可以在SQL查询中使用MYSQL函数:

SELECT * FROM table_claims WHERE date_available < DATE_ADD(CURDATE(),INTERVAL -2 WEEK)

答案 1 :(得分:1)

  嘿@Ale如果你想要过去的时间(周,分钟,秒),比如   你需要几周的情况,所以你可以使用format =&gt; strtotime(&#34; - 2周/ - 1   分钟&#34;)等它会给你时间戳

现在在你的情况下尝试下面的一个:

<?php
     $date = date("Y-m-d", strtotime("- 2 weeks"));
     SELECT * FROM table_claims WHERE date_available < '$date'
?>

它会给所有date_available小于两周,或者你可以根据你改变逻辑(y)