我试图在一个月内每天进行循环,并在一个月内获得每天的结果数量。
我做了以下事情;
<?php
include 'inclues/db.inc.php';
for($i = 2; $i < 30; $i++){
$date2 = $i-1;
$date1 = $i;
$q = mysql_query("SELECT * FROM `table` WHERE `date` < '2012-09-".$date1." 00:00:00' AND `date` > '2012-09-".$date2." 00:00:00'";
//$r = mysql_fetch_assoc($q);
echo mysql_num_rows($q)."<br />";
}
?>
如果我只是尝试回显日期1和2但是如果我使用查询则不行。我在使用查询时最终会出现500内部服务器错误。
有关如何解决此问题的任何想法?在循环中使用查询通常是不好的做法吗?
答案 0 :(得分:3)
执行
SELECT
date
, COUNT(*) from table
group by date
答案 1 :(得分:1)
SELECT * FROM `table` WHERE `date` BETWEEN $date1 AND $date2;
答案 2 :(得分:0)
在循环中使用查询并不错。
检查你的查询字符串是什么,尝试在你的数据库上手动运行该查询。它可能会产生一些错误。
$sql = "SELECT * FROM `table` WHERE `date` < '2012-09-".$date1." 00:00:00' AND `date` > '2012-09-".$date2." 00:00:00'";
echo $sql;
$q = mysql_query($sql);