17,382
社区成员




SELECT s.STUDENT_ID , s.COURSE_ID ,s.SCORE_NUMBER ,a_s_n
FROM
TRAIN_SCORE s
JOIN
(SELECT
a.STUDENT_ID ,
AVG(a.SCORE_NUMBER) AS a_s_n
FROM
TRAIN_SCORE a
GROUP BY
STUDENT_ID ) AS b
ON
s.STUDENT_ID=b.STUDENT_ID
ORDER BY
b.a_s_n DESC
下面是正确的
--13. 按平均成绩从高到低显示所有学生的所有课程的成绩以及平均成绩
SELECT s.STUDENT_ID , s.COURSE_ID ,s.SCORE_NUMBER ,a_s_n
FROM
TRAIN_SCORE s
JOIN
(SELECT
a.STUDENT_ID ,
AVG(a.SCORE_NUMBER) AS a_s_n
FROM
TRAIN_SCORE a
GROUP BY
STUDENT_ID ) b
ON
s.STUDENT_ID=b.STUDENT_ID
ORDER BY
b.a_s_n DESC
就在b表前少了个as。有大佬能说明一下吗?
缺少的应该是ON ,AS被当做表名,之后应该链接ON,而你后面是b