SELECT
t.cs_team_id,
t.cs_teamname_long,
w.cs_wedstrijden_team_id_thuis,
IF((w.cs_wedstrijden_doelthuis>w.cs_wedstrijden_doeluit),1,0) AS thuis_winst,
IF((w.cs_wedstrijden_doelthuis=w.cs_wedstrijden_doeluit),1,0) AS thuis_gelijk,
IF((w.cs_wedstrijden_doelthuis<w.cs_wedstrijden_doeluit),1,0) AS thuis_verlies,
w.cs_wedstrijden_doelthuis,
w.cs_wedstrijden_doeluit
FROM
cs_teams t,
cs_wedstrijden w
WHERE
t.cs_team_id= w.cs_wedstrijden_team_id_thuis
AND
w.cs_wedstrijd_gespeeld='Y'
order by thuis_winst desc;
bovenstaande queries doen wat ik er van verwacht. maar ik zou graag een de query willen hebben die de stand berekent.
Maar daarbij loop ik tegen mijn beperkte kennis van SQL mogelijkheden aan.
Op basis van de wedstrijd gegevens is volgens mij wel en querie te bouwen, die bepaald of een team een (of meerdere) wedstrijd heeft wedstrijd gespeeld.
En zo ja of basis van het verschil in doelpunten winst, gelijk, of verlies telt. daarbij het doelsaldo berekent en de boel sorteert.
maar ik ben bang dat dat een hele grote en ingewikkelde wordt
Daarom ben ik ook al me de subtable stand begonnen .
Maar wellicht dat er hier wat mensen op het forum zijn die meer kennis van SQL hebben en mij een end op weg kunnen helpen of tips kunnen geven.
updateje
Kan het dat als je in de table cs_wedstrijden een record wijzigt er automatisch iets in de table cs_stand wordt gewijzigd of toegevoegd?
Select
c.cs_stand_team_id,
t.cs_teamname_long,
SUM(c.cs_stand_winst) AS cs_winst,
SUM(c.cs_stand_gelijk) AS cs_gelijk,
SUM(c.cs_stand_verlies) AS cs_verlies,
SUM(c.cs_stand_voor) AS score_voor,
SUM(c.cs_stand_tegen) AS score_tegen,
SUM(c.cs_stand_voor- c.cs_stand_tegen) AS doelsaldo
FROM
cs_stand c,
cs_teams t
Where
c.cs_stand_team_id = t.cs_team_id
Group by
c.cs_stand_team_id
Order by
cs_winst desc,
cs_gelijk desc,
cs_verlies desc,
c.cs_stand_voor desc,
doelsaldo desc;
Select
c.cs_stand_team_id,
t.cs_teamname_long as team,
SUM(c.cs_stand_winst+ c.cs_stand_gelijk+ c.cs_stand_verlies) AS aantalwedstrijden,
SUM(c.cs_stand_winst) AS cs_winst,
SUM(c.cs_stand_gelijk) AS cs_gelijk,
SUM(c.cs_stand_verlies) AS cs_verlies,
SUM(c.cs_stand_voor) AS score_voor,
SUM(c.cs_stand_tegen) AS score_tegen,
SUM(c.cs_stand_voor- c.cs_stand_tegen) AS doelsaldo
FROM
cs_stand c,
cs_teams t
Where
c.cs_stand_team_id = t.cs_team_id
Group by
c.cs_stand_team_id
Order by
cs_winst desc,
cs_gelijk desc,
cs_verlies desc,
c.cs_stand_voor desc,
doelsaldo desc,
t.cs_teamname_long