mysql:SELECT * FROM `tablename` WHERE TO_DAYS(now()) - TO_DAYS(`birthday`) < 2

解决方案 »

  1.   

    对啊,我没有考虑清楚,不好意思。
    SELECT * FROM `tablename` WHERE DAYOFMONTH(now()) - DAYOFMONTH(`birthday`) <= 2  AND MONTH(`birthday`) = MONTH(now())
      

  2.   

    呵呵,还是谢谢你给出答案,刚才查到了mysql中DAYOFMONTH函数。
    封贴了,谢谢 keaizhong(可爱钟)分还是给你
      

  3.   

    select * from tbl_name where TO_DAYS(CONCAT(YEAR(now()),'-',MONTH(birthday),'-',DAYOFMONTH(birthday))) BETWEEN TO_DAYS(now()) and TO_DAYS(now())+2
    其中
    CONCAT(YEAR(now()),'-',MONTH(birthday),'-',DAYOFMONTH(birthday))
    从出生日期中提取月、日与今年的年份组装成今年的生日