As I said in the other thread: you need to redesign your database layout.
When you enter the scores, calculate and store the result at the same time, ie Home win, Away win, Draw.
Add win, loss, draw columns to your team table and update this when you enter the results.
Then calculate and store the various aggregates that you want to display in more columns for each team.
All of this is possible because the actual results are static data - they do not change over time. Calculating and storing this data once is much more efficient than calculating it every time a user wants to view it.
You only ever need to use on-access agregation when the source data is dynamic and rapidly changing, eg stock market prices, hits per minute, or when it is for a one-off report, etc.