MySql查询生日的两种方式

Posted 老骥伏枥志在千里

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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查询生日的两种方式的主要内容,如果未能解决你的问题,请参考以下文章

使用mybatis的两种方式

mysql 分组总和求最大值 的两种方式

mybitis实现增,删,改,查,模糊查询的两种方式:

Windows启动MYSQL的两种方式

Windows启动MYSQL的两种方式

Windows启动MYSQL的两种方式