Php 在给定日期时间前10分钟检索记录

Php 在给定日期时间前10分钟检索记录,php,mysql,sql,datetime,opencart,Php,Mysql,Sql,Datetime,Opencart,需要查找距离给定日期时间超过10分钟的记录。 从下面的查询中,它会在给定日期前10分钟获取记录,然后选择前一天或前一天的所有记录 因为我希望检索给定日期(10分钟之前)的所有记录。但并非所有记录,即所述给定日期前几天的记录 $sql = "SELECT otb.* FROM oc_table_book otb LEFT JOIN oc_order o ON (o.order_id = otb.order_id) WHERE otb.preorder_status_id = '3' AND ot

需要查找距离给定日期时间超过10分钟的记录。 从下面的查询中,它会在给定日期前10分钟获取记录,然后选择前一天或前一天的所有记录

因为我希望检索给定日期(10分钟之前)的所有记录。但并非所有记录,即所述给定日期前几天的记录

$sql = "SELECT otb.*
FROM oc_table_book otb
LEFT JOIN oc_order o
ON (o.order_id = otb.order_id)
WHERE otb.preorder_status_id = '3' AND 
otb.booked_date <= '" . $this->db->escape($table_data['booked_date']) . 
"' - INTERVAL 10 MINUTE ORDER BY otb.booked_date";
尝试使用DATEADD无效

$sql = "SELECT otb.*
FROM oc_table_book otb
LEFT JOIN oc_order o
ON (o.order_id = otb.order_id)
WHERE otb.preorder_status_id = '3' AND 
otb.booked_date <= dateadd(minute, -10, '" . $this->db->escape($table_data['booked_date']) . 
")";
导致

Fatal error: Uncaught Exception: Error: You have an error in your SQL syntax; check the manual that corresponds to your MySQL server version for the right syntax to use near ''2018-01-19 07:30:00)' at line 6<br />Error No: 1064<br />SELECT otb.* FROM oc_table_book otb LEFT JOIN oc_order o ON (o.order_id = otb.order_id) WHERE otb.preorder_status_id = '3' AND otb.booked_date <= dateadd(minute, -10, '2018-01-19 07:30:00) in /var/www/html/silverspoon/system/library/db/mysqli.php on line 40

您似乎想要:

SELECT otb.*
FROM oc_table_book otb JOIN  -- I don't see why LEFT JOIN is necessary
     oc_order o
     ON o.order_id = otb.order_id
WHERE otb.preorder_status_id = 3 AND -- probably an integer
      otb.booked_date <= ? - INTERVAL 10 MINUTE AND
      otb.booked_date >= DATE(?)
ORDER BY otb.booked_date;

注意?的用法?。这是一个参数占位符。您应该使用它将常量值传递到查询中。

您在SQL语法中有一个错误

请尝试以下查询:

SELECT otb.* FROM oc_table_book otb
LEFT JOIN oc_order o
ON o.order_id = otb.order_id
WHERE otb.preorder_status_id = '3' AND 
otb.booked_date <= dateadd(minute, -10,".$this->db->escape($table_data['booked_date']).")

Verifed DATEADD无法从此服务器上运行。不是SQL语法错误请尝试使用我的查询一旦看到您的查询中的SQL查询中有DATEADD可用,您的查询中有一些错误,请更正。。请核对我的问题。