楼主sql水平仍需提高 1) select studentid,courseid,score from (select *,rank() over(partition by studentid order by score) rk from course_student_score_di)T where rk=1 2) select studentid,max(case when courseid='语文&(8803)#39; then score end) '语文'                            max(case when courseid='数学&(8804)#39; then score end) '数学'                            max(case when courseid='英语&(8805)#39; then score end) '英语'                            max(case when courseid='物理&(10629)#39; then score end) '物理' from course_student_score_di group by studentid 第二题还可以用pivot函数