Ik ben bezig met mijn competitieprogramma uit te breiden naar meerdere ronden tot (voorbeeld) 10 maal iedereen tegen iedereen. Vroeger 1 of 2 keer.
Ik loop vast in het zoeken naar de her-programmatie van de partijen. Dit is vergelijkbaar met uitgestelde matchen in andere sporten zoals voetbal en basketbal. Verschil is dus niet 1 maal tegen iedereen, 1 X thuis en 1 X op verplaatsing maar tot 5 X thuis en verplaatsing.
Probleem is dus dat ik partij speler X tegen speler Y ook 5 X kan tegenkomen en dus ook 5 X moet gepland worden.
Zodra de planning is gebeurd krijg ik de gegevens terug van de 5 planningen op de 5 verschillende dagen.
Ik kan niet verwijzen naar de partij op zich want deze zijn nog niet gespeeld en hebben dus geen partij_id
Iemand een idee om dit op te lossen? Alle ideeën zijn goed. Ik kan velden/tabellen bijmaken indien nodig
Hier de query's
Ophalen speeldagen
select
id,
DATE_FORMAT(datum, "%d/%m/%Y") as datumfmt,
datum,
naam
from
TR2__volgenderondeinfo
where
(id_toernooi=' . $ACTIEFTOERNOOI->ID . ')'Ophalen geplande partijen
SELECT
r.id,
concat(s1.voornaam," ",s1.naam) wit,
s1.id wit_id,
s2.id zwart_id,
concat(s2.voornaam," ",s2.naam) zwart,
(COALESCE((select uitslag from TR2__partijen p2 where speler1=s1.id and speler2=s2.id and p2.ronde=p1.ronde) , "")) uitslag,
(COALESCE((select uitsteller from TR2__partijen p2 where speler1=s1.id and speler2=s2.id and p2.ronde=p1.ronde), "")) uitsteller,
COALESCE(o.opmerking, "") opmerking,
p1.datum,
p1.ronde
FROM
TR2__spelers s1
JOIN
TR2__spelers s2
LEFT JOIN
TR2__volgenderonde r
ON s1.id = r.speler1
AND s2.id = r.speler2
left join
TR2__volgenderondeinfo_opmerkingen o
on o.volgenderondeinfo_id = r.id
left JOIN
TR2__partijen p1
on p1.speler1=r.speler1 and p1.speler2=r.speler2
where
r.ronde=' . $rij['id'] . ' AND #id volgens volgenderondeinfo
true
order by
wit,
zwart;Jan