用sql語句實現去重計數查詢


最近開發acm隊員cf數據統計查詢系統(https://github.com/liuyong0076/ACMER),需要對每個學號完成的cf題數進行計數。

首先使用cf提供的api將數據抓取並存入數據庫,其中有學號stuNO,比賽ID-cid,題目編號index,判題結果stutus幾個關鍵字段。

難點是要對同一個學號,同一個比賽id,同一道題的多次正確提交進行去重。

最終使用嵌套查詢實現,代碼如下:

select a.stuNo, count(*) from 
(
select stuNO, cid, `index`, statu,count(*) from acmerdata_cfcontest where status='OK' GROUP BY stuNO, cid, `index`, status HAVING count(*)<2
) a
group by a.stuNo;


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM