Three tables:
- Activities
- Matches
- Ratings
Each match is associated with one activity (AID as a foreign key). And each activity has multiple reviews.
I'm trying to count the number of matches that each activity is associated with:
SELECT MATCHES.AID, Count(MATCHES.AID) AS CountOfAID
FROM ACTIVITIES INNER JOIN MATCHES ON ACTIVITIES.AID = MATCHES.AID
GROUP BY MATCHES.AID;
Returns this just fine:
But as soon as I add the inner join to also include the average rating of each activity:
SELECT ACTIVITIES.[Activity Name], Count(MATCHES.AID) AS CountOfAID,
Avg(RATINGS.Rating) AS AvgOfRating
FROM (ACTIVITIES INNER JOIN MATCHES ON ACTIVITIES.AID = MATCHES.AID) INNER
JOIN RATINGS ON ACTIVITIES.AID = RATINGS.AID
GROUP BY ACTIVITIES.[Activity Name];
This happens:
How can I work around this?