dmitriy Asked:2020-09-02 22:11:03 +0000 UTC2020-09-02 22:11:03 +0000 UTC 2020-09-02 22:11:03 +0000 UTC 如何在 SQL 中按城市查找平均分数 772 任务:找出每个拥有大学的城市的平均成绩。问题是我有大约 10 个城市,每次我都必须写 WHERE 和城市名称,例如(SELECT ID FROM UNIVERSITIES WHERE CITY='Kyiv')。如果您告诉我如何优化它,我将不胜感激,这样您就不会手动编写每个城市。 SELECT AVG (MARK) FROM EXAM_MARKS E WHERE STUDENT_ID IN (SELECT ID FROM STUDENTS WHERE UNIV_ID IN ( SELECT ID FROM UNIVERSITIES WHERE CITY='Киев')) sql 1 个回答 Voted Best Answer cyadvert 2020-09-02T22:50:02Z2020-09-02T22:50:02Z 您需要JOIN通过所有表格和GROUP BY. 像这样的东西: SELECT u.CITY, AVG(e.MARK) as avgMark FROM UNIVERSITIES u JOIN STUDENTS s ON u.ID=s.UNIV_ID JOIN EXAM_MARKS e ON s.ID=e.STUDENT_ID GROUP BY u.CITY
您需要
JOIN通过所有表格和GROUP BY. 像这样的东西: