php按日期从mysql获取数据

时间:2017-08-05 04:34:10

标签: php mysql date

如果我在mysql中有这样的数据

----------------------------------
id - title - date
1  - samy  - 2017-08-03 10:38:58 AM
2  - sara  - 2017-08-03 05:38:58 AM
3  - susan -2017-08-04 04:38:58 AM
-----------------------------------

使用php我怎样才能在05:08-2017和05:00-17:00之间的05:00 am之间调用什么数据

$sql = "select id,title,date from orders 
where Day(date)='03' AND Month(date)='08' AND Year(date)='2017'";

但它只显示03-08-2017中的所有数据 我还需要在04-08-2017从凌晨12:00到凌晨05:00获取数据,只需在这五个小时内添加所有数据,如果我使用的话

$sql = "select id,title,date from orders 
where Day(date)='04' AND Month(date)='08' AND Year(date)='2017'";

我需要隐藏在当天凌晨12:00到05:00之间添加的所有数据,并在第二天凌晨00点到凌晨05点之间获取数据 我怎么能这样做?

2 个答案:

答案 0 :(得分:2)

$sql = "SELECT id,title,date FROM orders WHERE date BETWEEN '2017-08-03 05:00:00' AND '2017-08-04 05:00:00'"

这应该让你在正确的地方。现在,如果你想用php自动化,你可以使用变量设置字符串,并在第二天的时候使用函数更新日期。

答案 1 :(得分:0)

您只需使用between即可在两个日期之间获取数据。将您的查询更改为

$sql = "SELECT id,title,date FROM orders
        WHERE date BETWEEN '2017-08-03 05:00:00' AND '2017-08-04 05:00:00'";