SELECT
k.nazwa as nazwa,
k.klub_id as klub_id,
k.liga_id as liga_id,
SUM(
(@remis := IF (m.gol1 = m.gol2, 1, 0)) +
(@zwyciestwo :=
IF (
(m.gol1 > m.gol2 AND m.gospodarz = k.klub_id) OR
(m.gol1 < m.gol2 AND m.gosc = k.klub_id),
1,
0
)
) * 3
) as punkty,
SUM(
IF (m.gospodarz = k.klub_id OR m.gosc = k.klub_id, 1, 0)
) as mecze,
SUM(@zwyciestwo) as zwyciestwa,
SUM(@remis) as remisy,
SUM(
IF (
(m.gol1 < m.gol2 AND m.gospodarz = k.klub_id) OR
(m.gol1 > m.gol2 AND m.gosc = k.klub_id),
1,
0
)
) as przegrane,
SUM(
IF (m.gospodarz = k.klub_id, m.gol1, m.gol2)
) as bramkizdobyte,
SUM(
IF (m.gospodarz = k.klub_id, m.gol2, m.gol1)
) as bramkistracone
FROM
klub as k,
mecz as m
WHERE
(k.liga_id = 123) AND
(m.gospodarz = k.klub_id OR m.gosc = k.klub_id)
GROUP BY
k.klub_id
ORDER BY
punkty DESC