Я работаю на сайте конкурса, где есть два типа пользователей, обычные участники сайта и судьи. Каждый может использовать инструмент перетаскивания, чтобы упорядочить записи в определенном конкурсе в выбранном ими порядке. Когда они сделаны, к соответствующим идентификаторам вступлений присваивается ранговое значение, которое затем можно использовать для определения того, какая запись в конкурсе получила наивысший средний балл. Фактически победитель будет определен путем усреднения средних значений по каждой группе.
То, что я надеюсь сделать, это закончить таблицей, показывающей КАЖДУЮ запись в конкретном конкурсе, с заголовком, а затем показать 3 значения, avg_normal для этой записи, avg_judge для этой записи, а затем эти два значения, добавленные вместе делится на два, поэтому на avg_normal и avg_judge приходится по 50% от avg_all. Наконец, сортируйте таблицу по avg_all.
avg_all = ((avg_normal + avg_judge) / 2)
Они заказывают entry_ids 1, 2, 3, 4, 5 по порядку. Значение рейтинга начинается с нуля, поэтому:
entry_id, entry_ranking, author_id
1, 0, 1
2, 1, 1
3, 2, 1
4, 3, 1
5, 4, 1
Я надеюсь определить средние значения по шкале от 1 до 100, поэтому рейтинг в рейтинге составляет 0 = 100 баллов, 1 = 90, 2 = 80, 3 = 70 и все, что выше 4 = 5 баллов
Каждый пользователь присоединяется к группе в другой таблице, поэтому он либо обычный пользователь, либо судья
Я хочу написать запрос, который находит
1.) Средняя НОРМАЛЬНАЯ оценка голосов пользователей
2.) Средний балл СУДЬЯ за пользователя
3.) Среднее из НОРМАЛЬНОГО И СУДЕБНОГО СЧЕТА.
Так нормально Средний пользователь = 93,3333, средний судья = 70, общий средний = 81,66665
Благодаря ответам ниже, оба запроса работают как чемпион.