작동하지 BETWEEN 사용하여 쿼리드루팔 7 - 나는 사용자 정의 테이블을 검색하는 드루팔 7에서 쿼리를
$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));
내가 제대로 기능 사이의 인식되지 않는다는 것을 믿기 때문에 쿼리가 작동하지 않는 및 end_time이 있으므로이를 반환합니다. 이것이 BETWEEN 문인 drupal 또는 db api를 표시하는 방법이 있습니까? 감사.
나는 그것을 얻지 않는다. 나는 Clive와 Krister Andersson의 솔루션을 내 코드와 동일한 결과로 시도했다. 사용되는 $ start_time의 값은 데이터베이스에서 varchar로 저장된 0600입니다. 일치 항목으로 반환되는 행의 값은 -> start_time = 0700, end_time = 0950입니다. 0600은 분명히 0700 및 0950 사이가 아닙니다. 알아낼 수 없습니다. 험프! – RayJamesFun
start_time 및 end_time은 문자열이 아닌 숫자 여야합니다. –
@MariusIlie : 숫자 여야하는 이유는 무엇입니까? 4 자리의 문자열을 사용하여 시간을 표현하는 것이 타당합니다. 항상 수행됩니다. 이것은 사용자 정의 테이블이며 필드 API의 일부가 아니라는 것을 기억하십시오. – Clive