Mysql
 sql >> Datenbank >  >> RDS >> Mysql

MySQL-Abfrage, um Geburtstage für die nächsten 10 Tage zu erhalten

Wenn u.bday ein Datum ist, können Sie so etwas tun:

WHERE u.bday < NOW() + INTERVAL 10 DAY AND u.bday >= NOW() 

MySQL hat gute Datenvergleichs- und Berechnungsfunktionen. Weitere Einzelheiten finden Sie im Handbuch:http ://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html

Wenn u.bday ein varchar-formatiertes mm-tt-jjjj ist, verwenden Sie Folgendes:

WHERE STR_TO_DATE(u.bday, '%m-%d-%Y') < NOW() + INTERVAL 10 DAY 
                              AND STR_TO_DATE(u.bday, '%m-%d-%Y') >= NOW() 

(Wenn u.bday kein Datum ist, machen Sie es zu einem. Die Verwendung des richtigen Datentyps für Ihre Spalten macht Ihr Leben viel einfacher.)