select st.sid, st.name ,SUM(CASE WHEN sb.name = '大学数学' THEN score ELSE 0 END) AS "大学数学 ,SUM(CASE WHEN sb.name = 'C语言基础课程' THEN score ELSE 0 END) AS "C语言基础课程" ,SUM(CASE WHEN sb.name = '大学英语' THEN score ELSE 0 END) AS "大学英语" FROM student st INNER JOIN score sc ON st.sid = sc.sid INNER JOIN SUBJECT sb ON sb.subid = sc.subid GROUP BY st.sid ORDER BY st.sid;
,SUM(CASE WHEN sb.name = '大学数学' THEN score ELSE 0 END) AS "大学数学
,SUM(CASE WHEN sb.name = 'C语言基础课程' THEN score ELSE 0 END) AS "C语言基础课程"
,SUM(CASE WHEN sb.name = '大学英语' THEN score ELSE 0 END) AS "大学英语"
FROM student st INNER JOIN score sc ON st.sid = sc.sid
INNER JOIN SUBJECT sb ON sb.subid = sc.subid
GROUP BY st.sid
ORDER BY st.sid;