問題描述一張表,id class score,一條SQL語句,獲得每個班級大于60分和小于60分的個數,結果為:班級 大于60 小于60A1 2 3A2 1 2補充采納了答案,我在想有沒有更簡單或者效率更高的sql語句
2 回答

慕斯709654
TA貢獻1840條經驗 獲得超5個贊
select class count(score as sc_under60) count(score as sc_above60)
from 表
where sc_under60 < 60 and sc_above60 > 60
group by class;
是這個意思么?

藍山帝景
TA貢獻1843條經驗 獲得超7個贊
是這樣吧。
SELECT
class as 班級,
(select count(score) from score c1 where score > 60 and c.class = c1.class) as 大于60,
(select count(score) from score c2 where score < 60 and c.class = c2.class) as 小于60
FROM
score c
GROUP BY
class;
添加回答
舉報
0/150
提交
取消