ogólnie co do danych statystycznych, to może być i 20 tabel :) ideę mam taką, żeby tak zaprojektować tabele, że w przyszłości już bez ingerencji w tabele będę posiadał możliwość dopisywania w aplikacji setek nowych statystyk (średnia walk, średnia z ost. 10 walk, rozbicie na poszczególne lata 2010, 2011, 2012, itp.)
na razie chcę rozwiązać system dla poszczególnych zawodników,
i co najważniejsze, każda walka to zmiana w punktach rankingowych (wg różnych systemów, opcja a: za wygraną bezpośrednią walkę wg określonej ilości punktów, wg, systemu, że wygrany x zdobywa punkty y w zależności od wzoru ...matematycznego (słaby jak pokona dobrego, dostaje więcej punktów niż za innego słabego -ale mniejsza o to , oraz opcja b: ogólnie punkty za wygranie jakiejś imprezy/gali (turniej) (no ale tu wejdzie mi tabela: turniej, pozycja na turnieju, itp.)
pomysł z dodatkową tabelką jest dobry, nie pomyślałem o niej, to znaczy pomyślałem, ale inaczej. więc mam nową opcję :)
co do wygranej/przegranej/remis (to opcja albo 1 albo 2 albo 3 - łatwo to będzie liczyć w zapytaniu) plus dodam idtypwyniku (nokaut, punkty, poddanie, kontuzja, ... ucieczka, gdzie potem zliczę też ile razy w jaki sposób ktoś zakończył walkę.
w opcji z drugą tabelką to właśnie jest ten problem, że mogę wpisać i 3 zawodników, to minus i nie wiem jak w niej też liczyć punkty
w formularzu html wszystko jest jasne:
select turniej
data
select zawodnik 1
select zawodnik 2
select wynik (hmmm, 1 - wygrywa "A", przegrywa "B" wtedy pierwszemu wpisuję 1, drugiemu 2=przegrana)
moja tabelka
WALKI
id
data
zawodnik1
zawodnik2
wynik1 (poprzez formularz)
wynik2 (odwrotność wynik1)
zastanawiam się, jakby do tego miało wyglądać zapytanie
wybieram id zawodnika OK
sprawdzam gdzie występuje, czyli listuję walki gdzie jego id_zawodnik = zawodnik1 lub zawodnik2 OK
ale nie mam bladego pojęcia jak zliczyć poprawnie jego wyniki, załóżmy że zapis w bazie:
1- wygrana, 2- przegrana, 3- remis, A,B,C.. to zawodnicy
id | data | zawodnik1 | zawodnik2 | wynik zawodnika1 | wynik zawodnika2 |
1 | 2010 | A | B | 1 | 2 |
2 | 2010 | C | A | 1 | 2 |
3 | 2010 | A | B | 3 | 3 |
4 | 2011 | D | A | 2 | 1 |
5 | 2011 | A | E | 1 | 2 |
- 3 wygrane, 1 przegrana, 1 remis
na oko widać, na sql nie ma bata, przynajmniej ja nie umiem.
mniej więcej o to mi chodzi, teraz chyba napisałem czytelniej :)