Группировать результаты, где определенный идентификатор в цикле while - PullRequest
0 голосов
/ 06 июня 2011
Table with data:

id   score   inputid
1      1        1
2      4        1
3      3        1
4      1        2
5      2        2
6      3        5
7      1        6
8      1        6

while ($stmt_score->fetch())
{
 if($bind_inputid == '1') $array['score'][0] += $bind_score;
 if($bind_inputid == '2') $array['score'][1] += $bind_score;
 if($bind_inputid == '5') $array['score'][2] += $bind_score;
 if($bind_inputid == '6') $array['score'][3] += $bind_score;
}

Как указано выше, я хочу суммировать все результаты с определенным идентификатором.Но так как будет больше идентификаторов $ bind_inputid, мой вопрос заключается в том, как сделать автоматические операторы для большего количества результатов идентификатора?

Это должно быть сделано в цикле while, а не с помощью mysql select.PHP Lang.Thx.

1 Ответ

1 голос
/ 06 июня 2011

Предположим, ваш результат отсортирован по inputid:

$inputid_curr = -1;
$score_array_index = -1;
while ($stmt_score->fetch())
{
 if($inputid_curr != $bind_inputid)
 {
  $score_array_index = $score_array_index + 1;
  $inputid_curr = $bind_inputid;
 }

 $array['score'][$score_array_index] += $bind_score;
}
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...