सबसे पहले स्कोर टेबल को एक साथ मिलाएं और होम टीम को अवेटीम के साथ स्वैप करें और गोल की गिनती को स्वैप करें। यह आपको कुछ स्रोत डेटा देता है जिसे आसानी से एकत्र किया जाता है और स्कोर कार्ड बनाने की क्वेरी कुछ इस तरह होती है:
select
team,
count(*) played,
count(case when goalsfor > goalsagainst then 1 end) wins,
count(case when goalsagainst> goalsfor then 1 end) lost,
count(case when goalsfor = goalsagainst then 1 end) draws,
sum(goalsfor) goalsfor,
sum(goalsagainst) goalsagainst,
sum(goalsfor) - sum(goalsagainst) goal_diff,
sum(
case when goalsfor > goalsagainst then 3 else 0 end
+ case when goalsfor = goalsagainst then 1 else 0 end
) score
from (
select hometeam team, goalsfor, goalsagainst from scores
union all
select awayteam, goalsagainst, goalsfor from scores
) a
group by team
order by score desc, goal_diff desc;