本文主要向大家介绍了MySQL数据库之MySql查询生日的两种方式 ,通过具体的内容向大家展现,希望对大家学习MySQL数据库有所帮助。
需要是要查询日期段内过生日的会员,分为两种情况:
1. 不跨年
例如: 查询2017-01-01到2017-01-20之间过生日的会员 (假定今天是2017-01-01则这种也可以描述为20天内过生日的会员)
select * from user where DATE_FORMAT(birthday,‘%m-%d‘) between ‘01-01‘ and ‘01-20‘
2. 跨年
例如: 查询2017-12-27到2018-01-05之间过生日的会员, (假定今天是2017-12-27则这种也可以描述为10天内过生日的会员)
这里取今年的起始时间与今年的最后一天做为1组条件,2017-12-27到2017-12-31; 取下年的第一天到下年的结束做为1组条件:2018-01-01到2018-01-05
select * from user where (DATE_FORMAT(birthday,‘%m-%d‘) between ‘12-27‘ and ‘12-31‘ OR DATE_FORMAT(birthday,‘%m-%d‘) between ‘01-01‘ and ‘01-05‘ )
分析了两种查询生日的情况, 还有一种情况是闰年生日的情况,留到下次再说.
本文由职坐标整理并发布,希望对同学们学习MySQL有所帮助,更多内容请关注职坐标数据库MySQL数据库频道!