Я полный новый стартер в программировании. Я только что создал систему для личного использования. Есть возможность добавить результаты спортивного матча двух игроков.ELO рейтинг - mysql design
Пока все работает нормально. Теперь я собираюсь добавить систему рейтинга ELO.
Не могу понять, как мне создать свою базу данных.
Проблема в том, что я не могу понять, как правильно вести учет оценки рейтинга в случае, если какой-либо результат игры будет удален в любое время. Например, кто-то добавит ошибочные данные, и запись игры должна быть удалена.
Итак, как должен быть создан дизайн базы данных, чтобы, если я удалю любую игру из середины записей, рейтинг будет пересчитан правильно?
иллюстративный пример моей проблемы, я не могу решить (расчет рейтинга только информативный):
Player1 (rating 1200), Player2 (1200)
Game1 played, player1 wins.
Rating after game: P1:1231, P2:1169
Game2 played, Player1 wins.
Rating: P1:1259, P2:1141
Game3, Player2 wins
Rating: P1:1220, P2:1180
Итак, тогда я понимаю, что игра 2 имеет ложные данные, я хочу, чтобы удалить его.
Что должно произойти? Я удаляю игру2, тогда скрипт должен изменить рейтинг, как Схватить рейтинг обоих игроков от одной игры до, после игры1. который будет P1: 1231, P2: 1169 И затем пересчитайте всю оценку после удаленной игры. Итак, Game3, победитель игрока, рейтинг должен быть P1: 1198, P2: 1202
Я не могу просто удалить игру2, и это разницы в рейтингах ... рейтинг должен быть пересчитан из предыдущей игры и для всех после игры.
Сложнее, если есть 3 или более игроков, и они играли в игры после того, что я хочу удалить. Из-за их рейтингов изменились. И если игра удалена, то все рейтинговые изменения игр, которые были сыграны после, должны быть пересчитаны один за другим.
Я надеюсь, что моя проблема ясна ...
Так таял вопрос, не могли бы вы дать мне полный стартер PHP/.mysql а намеки на то, что должно быть логика базы данных и процесс вычисления рейтинги моей ситуации.
Заранее спасибо.
Марк, извините, я не совсем понял свой вопрос. Вопрос: можете ли вы мне помочь с каким-либо намеком на то, как я должен попытаться создать свою базу данных? В настоящее время у меня есть стол для игроков и игровой стол. Как мне применить данные рейтингов? Если это будет новый стол или любой другой способ ...Я не могу понять, как мне организовать данные в базе данных ... Мое знание возможностей mysql/php слишком низкое. Мне нужна помощь со стороны. Я думал, что это место, где можно попросить такие советы. – OGlv
@MarcB: они не хотят, чтобы мы проектировали полную систему. Они попросили советов и советов. В этом нет ничего плохого. – georg