這個問題是查詢不同課程成績相同的學生的學生編號、課程編號、學生成績。需要注意的是,mysql 的 group by 語句在進行分組聚合后,無法對聚合后的結果集進行排序。
因此,我們可以采用一種迂回的方式,使用 group_concat 函數將相同成績的學生編號按升序連接起來,再結合 having 子句過濾掉分組后數量小于 2 的記錄。這樣,就可以得到同課程、同成績的學生信息了。
完整的查詢語句如下:
SELECT GROUP_CONCAT(sid ORDER BY sid) AS sids, cid, score FROM sc GROUP BY cid, score HAVING COUNT(1) > 1;
? 版權聲明
文章版權歸作者所有,未經允許請勿轉載。
THE END