PHP SELECT查询日期字段加6小时

时间:2018-06-04 09:36:21

标签: php mysqli

我想查询日期字段以选择所有等于或大于当前时间+ 6小时的条目。评论的第一个条目有效,但它是我正在与之争斗的第二个条目。我知道这种语法远非正确。

//$query = "SELECT * FROM `order` WHERE order_status_id = 1 AND date_added >= CURRENT_DATE ORDER BY order_id DESC";

$query = "SELECT * FROM `order` WHERE order_status_id = 1 AND  CURRENT_TIME >= date_added +6 hours";

3 个答案:

答案 0 :(得分:0)

$query = "SELECT * FROM `order` WHERE order_status_id = 1 AND  NOW()>= DATE_ADD(date_added,INTERVAL 6 HOUR)";

此查询将获取您的date_added值,并为其添加6个小时,之后将其与CURRENT_TIME进行比较。我建议在mysql中使用NOW()而不是CURRENT_TIME

答案 1 :(得分:0)

您可能正在寻找DATE_ADDdocumentation)功能。在你的情况下:

$query = "SELECT * FROM `order` WHERE order_status_id = 1 AND your_date_field >= DATE_ADD(CURRENT_TIME, INTERVAL 6 HOURS)";

可能会做你需要的。

答案 2 :(得分:0)

尝试此查询

$query = "SELECT * FROM `order` WHERE order_status_id = 1 AND  CURRENT_TIME >= DATE_ADD(date_added, INTERVAL 6 HOUR)";