0
$date['"01.06.2012"'] = '2012-06-01'; 
$date['"01.05.2012"'] = '2012-05-01'; 
$date['"01.04.2012"'] = '2012-04-01';
$date['"01.03.2012"'] = '2012-03-01';
$date['"01.02.2012"'] = '2012-02-01';
$date['"01.01.2012"'] = '2012-01-01';     

foreach($date as $month => $actual_date)
{  /* start foreach loop */
$query = "select Player, SUM(points) AS score from rankings WHERE
`drop_date` > '$actual_date' 
AND `drop_date` <= DATE_ADD('$actual_date',  INTERVAL 1 YEAR) 
GROUP BY Player
ORDER BY SUM(sa_points) LIMIT 0,5";
$result = mysql_query($query) or die(mysql_error());

while($row = mysql_fetch_array($result)){
echo $row['player'];
echo $row['score']; }

} /* end foreach loop */

この結果のテーブルに別のクエリを追加したいだけです。試してみcreate temporary tableましたが、foreach ループに従ってどこに配置すればよいかわかりませんでした。解析エラーまたは最後の$actual_date結果が得られ続けました。

4

1 に答える 1

2

これはあなたが到達しようとしているものですか?

$date['"01.06.2012"'] = '2012-06-01'; 
$date['"01.05.2012"'] = '2012-05-01'; 
$date['"01.04.2012"'] = '2012-04-01';
$date['"01.03.2012"'] = '2012-03-01';
$date['"01.02.2012"'] = '2012-02-01';
$date['"01.01.2012"'] = '2012-01-01';     

mysql_query('CREATE TEMPORARY TABLE results (player varchar(100), score int)');

foreach($date as $month => $actual_date)
{  /* start foreach loop */

    $query = "insert into results (player, score) 
    select Player, SUM(points) AS score from rankings WHERE
    `drop_date` > '$actual_date' 
    AND `drop_date` <= DATE_ADD('$actual_date',  INTERVAL 1 YEAR) 
    GROUP BY Player
    ORDER BY SUM(sa_points) LIMIT 0,5";
    mysql_query($query) or die(mysql_error());
} /* end foreach loop */

$result = mysql_query('select * from results') or die(mysql_error());
while($row = mysql_fetch_array($result)){
    echo $row['player'];
    echo $row['score']; 
}
于 2012-06-25T18:10:57.203 に答える