这是出生日期列表。现在我需要得到每个生日是今天、明天或昨天的人的ID。
我已经尝试了很多,但没有得到正确的结果。请提供适当的演示,以便帮助我理解。
我的DB结构是:
ID DOB
1 2001-10-15
2 2002-09-13
3 2002-09-11
4 2003-05-09
5 2006-09-12
让我们举个例子:今天是11/09-2015。所以我希望结果是
ID DOB DAY
5 2002-09-12 Today
3 2002-09-11 Yesterday
2 2006-09-13 Tomorrow
try below query
SELECT DOB,
IF (DAY(DOB)=DAY(NOW())
AND MONTH(DOB)=MONTH(NOW()),
'TODAY',
IF (DAY(DOB) =DAY(ADDDATE(NOW(),-1))
AND MONTH(DOB)=MONTH(ADDDATE(NOW(),-1)),
'Yesterday',
IF (DAY(DOB) =DAY(ADDDATE(NOW(),+1))
AND MONTH(DOB)=MONTH(ADDDATE(NOW(),+1)),
'Tomorrow',
'Future') ) )
FROM tmp;
输出昨天2015-09-10
今天2015-09-11
明天2015-09-12未来
2015-09-13
试试这段代码。
<?php
$today=date('Y-m-d');
$yesterday=date('Y-m-d',strtotime("-1 days"));
$tomorrow=date('Y-m-d',strtotime("+1 days"));
$sql=mysql_query("select id from tablename where dob='$today' OR dob='$yesterday' OR dob='$tomorrow'");
while($row=mysql_fetch_array($sql))
{
echo $row;
}
?>