我在mysql中有一个qazxsw poi列,其中包含mysql qazxsw poi格式的出生日期:
date()
我正在尝试查询此表,以便列出从今天到下一个7天生日的所有用户。我现在有类似的东西:
YYYY-MM-DD
上述查询的问题在于它只列出了具有DOB的用户,该用户只有今年的确切日期才是正确的。我真正想要的是通过仅匹配“日期”和“月份”并忽略“年份”来列出具有生日的用户而不管他们出生的年份。
我不知道如何实现这一目标。请有人帮帮我...
在我发布问题后不久,我尝试了一种使用$table->date('dob')->nullable();
SQL函数的原始查询的方法。所以这就是我现在所拥有的似乎是通过让用户在接下来的7天内生日而不管年份如何工作:
$date = new Carbon;
$today = $date->format('Y-m-d');
$futureDays = $date->addDays(7)->format('Y-m-d');
$birthdays = SiteUsers::where('dob', '>=', $today)
->where('dob', '<=', $futureDays)
->orderBy('dob', 'ASC')
->get();
请享用