带有详细答案的 SQL 案例问题(分步)
带有详细答案的 SQL 案例问题(分步)
我们分析了超过 50,000 次从上市前到财富 500 强公司的采访 大科技采访 (BTI) 策划最新 SQL 面试问题和解决方案的独家列表,以便您在下一次面试中取得成功!
SQL 架构
表:竞技场
+------------+--------+
|列名 |类型 |
+------------+--------+
|尝试 |int |
|匹配 |int |
|赢得 |布尔 |
+------------+--------+
迅速的: 玩家会为您提供竞技场尝试的数据。如果赢得 6 场比赛,则赢得竞技场。如果输掉 2 场比赛,则失去竞技场。求该玩家每次竞技场尝试的平均胜场数。四舍五入到小数点后两位。
例子
表:竞技场
+--------+------+------+
|尝试 |比赛 |获胜 |
+--------+------+------+
|1 |1 |假|
|1 |2 |真 |
|1 |3 |真 |
|1 |4 |假|
|2 |1 |真 |
|2 |2 |真 |
|2 |3 |假|
|2 |4 |真 |
|2 |5 |假|
|3 |1 |真 |
|3 |2 |真 |
|3 |3 |假|
|3 |4 |真 |
+--------+------+------+ * 表格缩短,见完整数据[ 这里](https://app.bigtechinterviews.com/challenge/3EFUmED04vcpOXDsLrdDwC)
提示 (A) 输出
+----------+
|avg_wins |
+----------+
|4.00 |
+----------+
想在真正的 SQL 引擎中练习这个问题吗? 在这里了解更多!
步骤1
首先,我们需要计算每次尝试的获胜次数:
逻辑
- 这是一个简单的 COUNT() 聚合 试图 .我们将使用结果 获胜 下一步中我们的 AVG() 中的数字。
第2步
在 CTE 中使用步骤 1(称为“wins”),我们可以得到结果 获胜 数并求平均值:
逻辑
- 我们正在寻找我们的 AVG() 获胜 聚合计算。
- 我们将结果 ROUND() 到小数点后 2 位。
最终查询
版权声明:本文为博主原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 全程不用写代码,我用AI程序员写了一个飞机大战
· MongoDB 8.0这个新功能碉堡了,比商业数据库还牛
· 记一次.NET内存居高不下排查解决与启示
· 白话解读 Dapr 1.15:你的「微服务管家」又秀新绝活了
· DeepSeek 开源周回顾「GitHub 热点速览」