Вверх ↑
Ответов: 4630
Рейтинг: 749
#1: 2014-07-15 16:39:24 ЛС | профиль | цитата
Для начала нужно придумать структуру таблиц. Для данных с одинаковой структурой не нужно создавать отдельные таблицы (например, для категорий)

Например, таблицы и их поля:

1) Участники (Members)
id
first_name
last_name
category_id - в этом поле будет хранится значение Categories.id, к которой принадлежит участник, из таблицы категорий.
....

2) Категории участников (Categories)
id
min_weight
max_weight
....

3) Программа боёв - кто с кем бьётся (Rounds)
id
number - если требуется своя нумерация раундов
category_id - идентификатор категории, для которой назначен этот раунд (Categories.id)
first_fighter_id - идентификатор первого участника в раунде (Members.id участника)
second_fighter_id - идентификатор второго участника
winner_id - идентификатор победившего в раунде участника
....

Соответственно потом можно и делать запросы для работы с базой. Например:
1) Получить список участников в категории 1
select * from Members where category_id=1

2) Получить список раундов и их участников для категории 1
select r.number, m1.first_name, m1.last_name, m2.first_name, m2.last_name
from rounds r
join members m1 on m1.id=r.first_fighter_id
join members m2 on m2.id=r.second_fighter_id
where r.category_id=1

3) Получить список победителей в раундах каждой из категорий:
select c.id, r.number, m.first_name, m.last_name
from categories c
join rounds r on r.category_id
join members m on m.id = r.winner_id

И так далее.

карма: 26

0