SQL 实战 | 统计比赛比分


一 题目

统计每场比赛双方得分,最终输出如下:



二 数据表结构(简化):

game表-比赛信息:

goal表-进球记录:



三 参考答案:

LEFT JOIN + CASE + COALESCE 



四 技术说明

LEFT JOIN:保留所有比赛记录,即使某场比分为 0:0

CASE WHEN:判断是哪个队进的球

SUM(...):累计进球数量

COALESCE(..., 0):把没进球的 NULL 转换成 0

GROUP BY g.id:支持ORDER BY中使用的g.id,防止出错



五 拓展玩法:

计算胜负:

计算进球差:



六 总结:

LEFT JOIN + CASE WHEN + COALESCE,统计比赛得分,0:0 也不漏。



说明:

本题参考自 SQLZoo(sqlzoo.net),内容为个人学习总结,欢迎交流分享,转载请注明来源



— END —

数据分析,一起努力。

Thryze|数据分析 × AI能力成长 × 效率工具探索

©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容