mysql查询以获取未来10天的生日 [英] mysql query to get birthdays for next 10 days

查看:475
本文介绍了mysql查询以获取未来10天的生日的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我正在查询下一个10天的生日.我今天可以查询,但即使参考了一些帖子,也无法在接下来的10天内进行查询.这是我为获取今天的生日而进行的查询

$count=mysql_query("SELECT u.fname, u.lname, u.profile_pic, u.uid, u.bday, f.uid, 
f.friend_id, f.status FROM friend_list f, users_profile u 
WHERE f.uid = '$id' AND f.status = '1' 
AND u.uid = f.friend_id 
AND DAY(STR_TO_DATE(u.bday, '%m-%d-%y')) = DAY(CURDATE()) 
AND MONTH(STR_TO_DATE(u.bday, '%m-%d-%y')) = MONTH(CURDATE())");

任何人都可以帮助我进行10天的查询

解决方案

如果u.bday是日期,则可以执行以下操作:

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

MySQL具有良好的日期比较和计算功能.有关更多详细信息,请参见手册: http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html

如果u.bday是varchar格式的mm-dd-yyyy,请使用以下命令:

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

(如果u.bday不是日期,则将其设为一个日期.为列使用正确的数据类型会使您的生活更加轻松.)

i am making a query to get birthdays for next 10 days . i was able to make a query for today but even after referring some post was not able to make it for next 10 days. Here is the query i made to get birthdays for today

$count=mysql_query("SELECT u.fname, u.lname, u.profile_pic, u.uid, u.bday, f.uid, 
f.friend_id, f.status FROM friend_list f, users_profile u 
WHERE f.uid = '$id' AND f.status = '1' 
AND u.uid = f.friend_id 
AND DAY(STR_TO_DATE(u.bday, '%m-%d-%y')) = DAY(CURDATE()) 
AND MONTH(STR_TO_DATE(u.bday, '%m-%d-%y')) = MONTH(CURDATE())");

can anyone help me out with a query for 10 days

解决方案

If u.bday is a date, you can do something like this:

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

MySQL has good date comparison and calculation functions. Refer to the manual for more details: http://dev.mysql.com/doc/refman/5.5/en/date-and-time-functions.html

If u.bday is a varchar formatted mm-dd-yyyy, use this:

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

(If u.bday is not a date, make it one. Using the right data type for your columns makes your life a lot easier.)

这篇关于mysql查询以获取未来10天的生日的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆