Php 如何在codeigniter中使用notbeth子句
我不知道这个问题出了什么问题。我犯了一个错误。谁能告诉我这件事吗Php 如何在codeigniter中使用notbeth子句,php,mysql,codeigniter,Php,Mysql,Codeigniter,我不知道这个问题出了什么问题。我犯了一个错误。谁能告诉我这件事吗 $this->db->where("ac.booking_date", $booking_date); $this->db->where(''.$booking_date .' NOT BETWEEN ac.booking_date AND ac.end_date', null, false); 发生数据库错误错误编号:1064您的SQL语法有错误;检查与您的MariaDB服务器版本相对应的手册,了解
$this->db->where("ac.booking_date", $booking_date);
$this->db->where(''.$booking_date .' NOT BETWEEN ac.booking_date AND ac.end_date', null, false);
发生数据库错误错误编号:1064您的SQL语法有错误;检查与您的MariaDB服务器版本相对应的手册,了解在第7行的ac
id
DESC>选择ac
*,p
plast\u name
FROManb\u crm\u bookings
ac
LEFT JOINanb\u crm\u users\u personal\u info
p
ON用户id
ac
由
创建的devid00@Gmail.com'和ac
记录id
=“36841”和ac
booking\u date
=“2019-05-29 10:00”和2019-05-29 10:00不在ac.booking\u date和ac.end\u date之间,ac
id
DESC文件名:models/BookingModel.php行号:245
你忘了第二句的引号了。 将其替换为以下代码
$this->db->where("ac.booking_date", $booking_date);
$this->db->where('"'.$booking_date .'" NOT BETWEEN ac.booking_date AND ac.end_date', null, false);
从逻辑上讲,如果您将
booking\u date
与输入日期进行比较,那么第二个where语句有什么用?$this->db->where(“'.$booking\u date.”“不在ac.booking\u date和ac.end\u date之间”,null,false)代码>更正此问题我需要检查之前的预订,比如10:00到12:00,所以下一步不能在11:00到1:00之间。请用您想要的更好的澄清或逻辑更新您的问题,因为从我们看到的情况来看,您没有写任何东西先格式化日期。或者简单地说:$this->db->where(“$booking_date不在ac.booking_date和ac.end_date之间”,null,false);
为什么需要BETWEEN?只需使用'>date_格式(ac.booking,%H:%I:%s'中)
@Akshay关于这件事,你应该问一个新问题,无论如何,这里有一些信息: