2013-03-14 2 views
0

У меня есть номер в моей тузда таблице бронирования bookings, как показано ниже:MYSQL - Выберите запрос между DATE_ADD и DATE_SUB

start_date = 2013-03-04 
end_date = 2013-03-08 

Я хочу, чтобы проверить, является ли конкретный день (в данном случае 2013-03-04) падает между датой начала и окончания в бронировании (-ах) - НО я хочу добавить один день к дате начала и вычесть 1 день с даты окончания.

Таким образом, вместо того, чтобы искать между 2013-03- и 2013-03- я хочу найти между 2013-03- и 2013-03-

The следующий ниже запрос вычитает 1 день с даты окончания, но сохраняет дату начала как 04. Нижеприведенный поиск не должен давать никаких результатов, но он все еще использует 04 в качестве даты начала и дает мне результат этого бронирования. Это в основном поиске между [04] [05] [06] [07], когда он должен сделать [05] [06] [07]

$fd_query_params = array( 
    ':day' => '2013-03-04 
); 

$query = " 
    SELECT 
     * 
    FROM 
     bookings as bb 
    WHERE 
     :day BETWEEN 
     DATE_ADD(bb.start_date, INTERVAL 1 DAY) 
     AND 
     DATE_SUB(bb.end_date, INTERVAL 1 DAY) 
"; 

ответ

0

Не PHP Expert сам, но должен там быть больше, чем я замечаю это только одна цитата вокруг строки: day. Было бы хорошо видеть вывод, чтобы проверить, что start_date и end_date

Смежные вопросы