如何在MySQL中过滤日期记录?

如何在MySQL中过滤日期记录?,mysql,sql,Mysql,Sql,在我的数据库中,有一个名为“生日”(date)的字段,我希望检索其出生月份和出生日期等于当前月份和日期的记录。有没有办法为此编写查询?或者我只需要检索所有记录,然后使用另一个程序找到匹配的记录就可以了?谢谢 select * from table where date_format(birthday, '%m%d')=date_format(current_date, '%m%d'); 上面的查询不会使用mysql索引,这也可能有效:(请注意,我不确定您指的是一个月内的天还是一周内的天) 还要

在我的数据库中,有一个名为“生日”(date)的字段,我希望检索其出生月份和出生日期等于当前月份和日期的记录。有没有办法为此编写查询?或者我只需要检索所有记录,然后使用另一个程序找到匹配的记录就可以了?谢谢

select * from table
where date_format(birthday, '%m%d')=date_format(current_date, '%m%d');
上面的查询不会使用mysql索引,这也可能有效:(请注意,我不确定您指的是一个月内的天还是一周内的天)


还要签出它-它有一些指针。%y=>它不是%d吗?在这里,您比较的是年和月,其中要求的是日和月。
SELECT * FROM TABLE
WHERE MONTH(birthday) = MONTH(CURRENT_DATE)
AND DAY(birthday) = DAY(CURRENT_DATE)    --assuming day within a month