我在Drupal 7的一个查询正在搜索的自定义表查询:Drupal的7 - 使用BETWEEN不工作
$query5 = "SELECT COUNT(reservation_id) as rcount5, reservation_id FROM {reservations} WHERE resource_id = :resource_id AND reservation_date = :reservation_date AND start_time BETWEEN :start_time AND :end_time";
$result5 = db_query($query5, array(':resource_id' => $resource_id, ':reservation_date' => $reservation_date, ':start_time' => $start_time, ':end_time' => $end_time));
查询是不工作,因为我认为这是不承认的BETWEEN正常运行和返回end_time因为它存在。有没有办法显示这是一个BETWEEN语句的Drupal或数据库API?谢谢。
我不明白。我尝试了Clive和Krister Andersson的解决方案,结果与我的代码相同。正在使用的$ start_time的值是0600,作为varchar存储在数据库中。作为匹配返回的行具有这些值 - > start_time = 0700,end_time = 0950. 0600显然不是BETWEEN 0700和0950.无法弄清楚。哼! – RayJamesFun
start_time和end_time应该是数字,而不是字符串 –
@MariusIlie:他们为什么应该是数字?使用4个字符的字符串表示一个时间是完全有效的,它总是完成。请记住,这是一个自定义表格,不属于字段API。 – Clive