Как отфильтровать записи по дате в MySQL? - PullRequest
6 голосов
/ 05 сентября 2011

В моей базе данных есть поле с именем день рождения (дата), и я хочу получить записи о том, что их месяц рождения и день рождения совпадают с текущим месяцем и днем.Есть ли способ написать запрос для этого?Или я просто должен сделать это путем извлечения всех записей и найти соответствующие записи после использования другой программы?Спасибо!

Ответы [ 2 ]

12 голосов
/ 05 сентября 2011

Это также может сработать: (Обратите внимание, что я не уверен, имеете ли вы в виду день в месяце или день в течение недели)?

SELECT * FROM TABLE
WHERE MONTH(birthday) = MONTH(CURRENT_DATE)
AND DAY(birthday) = DAY(CURRENT_DATE)    --assuming day within a month
4 голосов
/ 05 сентября 2011
select * from table
where date_format(birthday, '%m%d')=date_format(current_date, '%m%d');

Приведенный выше запрос не будет использовать индекс mysql

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...