Группировка одинаковых значений

Рейтинг: 0Ответов: 1Опубликовано: 22.09.2014

Доброго времени суток, товарищи!

У меня, в общем, вопрос следующего содержания:

Есть одна таблица, в которой содержится список участников, у них, соответственно, свои определенные баллы за тот или иной показатель. Каждый участник прикреплен к определенному пункту, всего их 30. Мне нужно вывести не участников, а именно эти пункты, в которых содержалась бы средняя информация всех участников, входящих в эти пункты.

Надеюсь, понятно объяснил:) Если что, прошу прощения!

U.P.

@terantul, все та же таблица. Как сказал в ней пользователи, которые закреплены по пунктам. 30 пунктов. Тот запрос, что выше, отлично работает и выводит среднее, как, собственно, и хотелось. Но, средневзвешенное значение, намного точнее среднего, и есть ли такая функция, которая могла бы это посчитать.
Средневзвешенное значение считается как:
= участник_1 * среднее_значение_по_пункту + участник_2 * среднее_значение_по_пункту +...+ участник_n * среднее_значение_по_пункту / среднее_значение_по_пункту.
Это нужно посчитать каждого участника, умножить каждого на среднее по этому пункту, и потом всю эту сумму поделить на среднее этого пункта. И так для всех 30.
Вот, думаю, средствами mysql можно ли такое сделать...

Ответы

▲ 0Принят

Используйте

AVG(expr)
Возвращает среднее значение аргумента expr:
mysql> SELECT student_name, AVG(test_score)
        FROM student
        GROUP BY student_name;