2012-01-06 4 views
35

Хорошо эксперты ... У меня есть таблица, которую я пытаюсь вычислить в среднем значения в столбце. Вот мой поиск:Вычислить среднее значение столбца из запроса MYSQL

$gameswon = mysql_query("SELECT SUM(P1_Score) AS value_sum FROM tblMatches Where P1_ID LIKE '".$playerid."'"); 

Любая идея, как я могу определить среднее значение (сумма значений/всего строк)?

Благодарим за помощь.

+1

Как ни странно, есть аналитический вызов: AVG, который делает именно это: D [link] (http://dev.mysql.com/doc/refman/5.0/en/group-by-functions.html) – xQbert

ответ

65

Очевидно, что

SELECT AVG(P1_Score) 
+0

Спасибо .. .it фактически представляет собой страницу статистики, в которой фильтр для игрока и просмотр результатов матчей. Так что я бы хотел показать как общее количество игр, так и среднее число игр за матч. – DoubleA

+0

@DoubleA: тогда выполняются разные запросы. У них нет ничего общего. – zerkms

+0

Благодарим за помощь. – DoubleA

2

Попробуйте использовать AVG() агрегатную функцию вместо SUM

$gameswon = mysql_query("SELECT AVG(P1_Score) AS value_sum FROM tblMatches Where P1_ID LIKE '".$playerid."' . "GROUP BY XXXX"); 

и XXXX это столбец, который вы хотите, чтобы получить среднее значение для таких как игрок

7

Так что в вашем случае:

$gameswon = mysql_query("SELECT AVG(P1_Score) AS value_sum 
         FROM tblMatches 
         WHERE P1_ID LIKE '".$playerid."'"); 
Смежные вопросы