Я пытаюсь придумать дизайн базы данных, который будет содержать результаты «Топ 10» для некоторых вычислений, которые в настоящее время выполняются. В основном, когда все сказано в готовом виде, будет 3 категории «Топ-10», которые меня устраивают, так как все они являются отдельными таблицами, однако мне нужно иметь возможность вернуться назад и позже извлечь исторические данные о том, что было в Топ-10 в определенное время, следовательно, необходимость в базе данных, хотя плоский файл будет работать, он может содержать данные за годы.
Теперь прошло некоторое время с тех пор, как я сделал что-то серьезное с базой данных, за исключением того, что содержало пару простых таблиц, поэтому у меня возникают некоторые проблемы при разработке этого дизайна. Если бы кто-то мог помочь мне с его дизайном, я знаю достаточно MySQL, чтобы сделать все остальное.
Итак, по сути, мне нужно сохранить: группу из 10 имен,% от общего количества очков, которое имело каждое имя, ранг, который они имели в Топ-10, и время, связанное с этими Топ-10 (так что я могу позже запрос на это время)
Я бы подумал, что мне нужна таблица для Топ-10 с 11 столбцами, один для идентификатора и 10 для Внешнего ключа таблицы «Имена», который содержит каждое имя, когда-либо использовавшееся с PK, Name,%, и ранг. Мне это кажется неуклюжим, у кого-нибудь еще есть предложения?
edit : «Топ 10» связан с определенным набором данных для 5-минутных интервалов, и каждый интервал полностью независим от предыдущих или будущих интервалов.