Mysql между запросом не работает

Я использую MySQL. Я хочу отображать записи между двумя датами. Я искал в Интернете и обнаружил, что формат даты mysql это гггг / мм / дд. поэтому я пишу запрос следующим образом,

select 
    * 
from tbl_reservation 
where 
    current_date between '2014-03-28' and '2014-03-26';

Но я не знаю, почему это не работает. "col_date" имеет тип данных DATE. Я не храню время в нем.

Позвольте мне дать вам некоторое представление о том, что я сделал на заднем плане,

SimpleDateFormat sdf=new SimpleDateFormat("yyyy-MM-dd");
Date curr_date=new Date();
String compareDate=sdf.format(curr_date);

И я храню это значение в "col_date". Это происходит из-за этой обработки?

Спасибо за ваше драгоценное время заранее.

3 ответа

Решение

С BETWEEN, используйте наименьшую дату первой, последнюю дату следующей

Так должно быть:

select * from tbl_reservation 
where col_date between '2014-03-26'  -- least date
                   and '2014-03-28'; -- latest date

Сначала напишите более низкое значение даты.

SELECT * FROM tbl_reservation WHERE col_date BETWEEN '2014-03-26' AND '2014-03-28'

Я установил имя столбца как current_date, На самом деле это функция в MySQL. Так что я не могу использовать current_date как имя столбца. Спасибо, я узнал что-то новое сегодня. Спасибо, Мастера.

Другие вопросы по тегам