我使用以下代码来获取具有数据类型datetime的字段的数据,但是它将结果作为空集执行。请帮我解决一下。
mysql_query("set @last_day=last_day(now()-interval 1 month),@first_day=(@last_day-interval 1 month)+interval 1 day");
$result=mysql_query("select * from `gcm_users` where (`created_at` between @first_day and @last_day)") or die("could not fire the query");
while($row=mysql_fetch_assoc($result))
{
echo $row['created_at'];
exit;
}
created_at字段具有datetime数据类型。
答案 0 :(得分:0)
您无法执行两个类似的查询,一个用于设置变量,另一个用于设置变量。这不是存储过程。
使用PHP变量并连接:
$last_day = "last_day(now()-interval 1 month)";
$first_day = "({$last_day}-interval 1 month)+interval 1 day)";
$sql = "select * from `gcm_users` where (`created_at` between {$first_day} and {$last_day})"
$result = mysql_query($sql) or die("could not fire the query");