select count(*) from( select sId, avg(score) avg_s from SC where cId in ( select cId from Course where cname in ('语文','数学','英语') ) group by sId having count(DISTINCT cId) = 3 )t1 where avg_s>60
select count(*) from( select a.sid, avg(b.score) as avg_score from SC b join Student a on a.sid=b.sid join Course c on b.cId = c.cid where c.cname in ('语文','数学','英语') group by a.sid having avg(score) > 60 ) w
WITH tmp AS(SELECT AVG(SC.score) FROM Student st JOIN SC ON st.sId = SC.sId GROUP BY SC.sId HAVING AVG(SC.score)> 60 ) SELECT count(*) FROM tmp