mysql查询获取 future 10天的生日

标签 mysql

我正在查询以获取 future 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 不是日期,请将其设为日期。为列使用正确的数据类型会让您的生活变得更加轻松。)

关于mysql查询获取 future 10天的生日,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12226062/

相关文章:

mysql - 截断了不正确的日期值 : '02:02:02 am'

PHP:MySQL 选择查询与字符串操作

mysql - 具有多态关联的数据方案

php - SELECT 1 FROM 和 if 语句

mysql - 数据库设计——存储模板和实例的最佳方式

php - Joomla 不制作数据库

mysql - 良好的登录系统数据库设计的唯一约束 ID?

php - 有效检查数据库中是否存在值

mysql - JOIN - 在列名之前添加表名是一种好习惯吗?

Mysql 行总和作为行值