2016-03-26 5 views
0

Привет У меня есть таблицы, как показано нижеSQL запрос выбора диапазона

year | month | otherdata 
2015 1  
2015 1  
2015 3  
2015 4  
2015 4 
2016 1 
2016 2 
2016 2 

здесь как я выбрать все данные (год 2015/месяц 4 до 2016 года/месяц 2)
я попробовал следующий запрос.

select * from `schedule_details` where (`year` >= 2015 and `month` >= 4) and (`year` <= 2016 and `month` >= 2) 

но его не работает. Как мне это сделать? пожалуйста, помогите

+0

Вам не нужен «месяц» <= 2' во второй части вашего предложения 'where'? – Lex

ответ

0

благодаря решена проблема

Select * 
From schedule_details 
Where (year = 2015 And month >= 4) 
    Or (year > 2015 And year < 2016) 
    Or (year = 2016 And month <= 2) 

есть ли другой способ лучше?

+0

Я не думаю, что вам нужно первое условие «ИЛИ». Нет никакого способа, чтобы этот год мог быть как больше 2015 года, так и меньше, чем в 2016 году. – Lex

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