[ kolejka ]
- mecz
- mecz
- mecz
W każdym meczu mam 2 drużyny, w zależności od ilości strzelonych bramek przydzielane są punkty (2 lub 1). Trzymam je w tabeli z drużynami w osobnym polu.
Przy usuwaniu/edycji wyniku meczu dane dotyczące punktów zmieniają się w tabeli drużyn. Teraz jeśli chciałbym usunąć całą kolejkę. Co za tym idzie muszę usunąć mecze do niej należące i zredukować punkty drużyn za usuwane mecze. I już zaczynają się schody.
Widzę na razie takie rozwiązanie:
- pobranie id meczy, które należą do usuwanej kolejki
- razem z nimi pobieram id drużyn, które grały w danym meczu
- pętla (-.-)" z 2 zapytaniami aktualizującymi punkty dwóch drużyn
- pętla usuwająca mecze o pobranych wcześniej id
- usunięcie kolejki
Istotna część struktury tabel:
Cytat
KOLEJKI
- `queue_id` id kolejki
- `queue_id` id kolejki
Cytat
MECZE
- `match_id` id meczu
- `queue_id` id kolejki, do której należy mecz
- `team1` id drużyny nr 1
- `team2` id drużyny nr 2
- `result` rezultat (możliwe jest 5 stanów: 0,0 - wynik 0:0; 1,1 - remis; 2,0 - pierwsza drużyna wygrała; 0,2 - druga drużyna wygrała; 3,3 - pole z wynikami nie zostało jeszcze uzupełnione)
- `match_id` id meczu
- `queue_id` id kolejki, do której należy mecz
- `team1` id drużyny nr 1
- `team2` id drużyny nr 2
- `result` rezultat (możliwe jest 5 stanów: 0,0 - wynik 0:0; 1,1 - remis; 2,0 - pierwsza drużyna wygrała; 0,2 - druga drużyna wygrała; 3,3 - pole z wynikami nie zostało jeszcze uzupełnione)
Cytat
DRUŻYNY
- `team_id` id drużyny
- `team_points` liczba punktów uzyskanych przez drużynę
- `team_id` id drużyny
- `team_points` liczba punktów uzyskanych przez drużynę
Ma ktoś może pomysł na lepszy schemat działania? Te pętle przy dużej ilości meczy (średnio jest ich 6-7) mogą mi poderżnąć maszynę.
Pozdrawiam.