Php MySQLi CURDATE()今天和明天还有2小时?

Php MySQLi CURDATE()今天和明天还有2小时?,php,mysql,date,Php,Mysql,Date,我正在使用当前日期从数据库检索结果 我当前的代码如下所示: $sql = "SELECT * FROM `1ymzj0g_orders` WHERE `processed` = '1' AND DATE(`order_date`) = CURDATE() LIMIT 100"; 这对于从今天开始获得结果是非常好的,尽管就我的情况而言,它需要从今天到明天凌晨2点获得结果 我猜在目前的布局下,我的结果会在午夜后清除,但是我需要在午夜后保留结果

我正在使用当前日期从数据库检索结果

我当前的代码如下所示:

$sql = "SELECT * 
        FROM `1ymzj0g_orders` 
        WHERE `processed` = '1' 
         AND DATE(`order_date`) = CURDATE() LIMIT 100";
这对于从今天开始获得结果是非常好的,尽管就我的情况而言,它需要从今天到明天凌晨2点获得结果

我猜在目前的布局下,我的结果会在午夜后清除,但是我需要在午夜后保留结果,但不会保留整整两天,直到凌晨2点左右


这可能吗?如果是这样的话,你能在这里给我一些建议吗?

你可以使用DATE\u ADD和一个小时的间隔来设置订单日期的限制 一些类似的事情:

WHERE DATE(`order_date`) = CURDATE() OR DATE(`order_date`) < DATE_ADD(CURDATE(), INTERVAL + 12 HOUR)
其中DATE(`order\u DATE`)=CURDATE()或DATE(`order\u DATE`)
这不应该是-2小时而不是-12小时吗?
日期添加(CURDATE(),INTERVAL+26小时)
(直到明天凌晨2点),所以如果我添加
+26小时,它将给出今天的所有结果,今晚午夜后也会显示今天的结果,直到凌晨2点?是的,这也取决于您的数据保留情况,您可能还需要在或日期之后添加(
order\u DATE
)>CURDATE(),显然我直到今天凌晨1点左右才能准确地测试它,尽管我已将它稍微修改为:
(DATE(
order\u DATE
)=CURDATE()或DATE(
order\u DATE
)>DATE\u add(CURDATE(),间隔-12小时))
如果将日期更改为大约一周前,结果仍然显示出来?这看起来正确吗?在夏令时切换期间,这应该做什么?第二天才两个小时,或者三个小时,或者一个小时?哦,哇,我还没想到会有那么远。。。我猜还是限制在凌晨2点,因为我无法想象商店会一直开到凌晨3点。如果需要,我可以随时进行配置。我的意思是凌晨2点是午夜后1、2或3小时,具体取决于一年中的哪一天。要记住的东西。你在这里选择的时间恰好在DST开始的一个小时内。虽然如果结果显示到凌晨4点、6点或其他时间都没有问题。只要他们在中午左右开始的下一个班次不出现,我可能会选择安全的一方,说3。