Mysql
 sql >> Base de Dados >  >> RDS >> Mysql

consulta mysql para obter aniversários para os próximos 10 dias


Se u.bday for uma data, você pode fazer algo assim:
WHERE u.bday < NOW() + INTERVAL 10 DAY AND u.bday >= NOW() 

O MySQL tem boas funções de comparação e cálculo de datas. Consulte o manual para obter mais detalhes:http ://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html

Se u.bday for um varchar formatado em mm-dd-aaaa, use isto:
WHERE STR_TO_DATE(u.bday, '%m-%d-%Y') < NOW() + INTERVAL 10 DAY 
                              AND STR_TO_DATE(u.bday, '%m-%d-%Y') >= NOW() 

(Se u.bday não for uma data, torne-a uma. Usar o tipo de dados correto para suas colunas torna sua vida muito mais fácil.)