简单
技术面试0 次浏览

微软的云计算业务 Azure 会收集大量的服务器性能数据。假设我们有一个服务器性能指标表,包含服务器 ID、时间戳、CPU 使用率、内存使用率等字段。现在要找出在某一天内 CPU 使用率最高的服务器 ID。请设计一个 SQL 查询来实现这个需求。

微软中国数据分析师
SQL数据查询

答题要点

推荐答题框架:可以使用分层分析法,先筛选出指定日期的数据,再按服务器 ID 分组,计算每组的最大 CPU 使用率,最后找出最大值对应的服务器 ID。关键要点如下:1. 筛选日期:使用 WHERE 子句筛选出指定日期的数据。2. 分组计算:使用 GROUP BY 按服务器 ID 分组,使用 MAX 函数计算每组的最大 CPU 使用率。3. 排序:使用 ORDER BY 按最大 CPU 使用率降序排序。4. 取最大值:使用 LIMIT 1 取排序后的第一行,即 CPU 使用率最高的服务器 ID。示例思路:先通过 WHERE 子句筛选出指定日期的数据,然后按服务器 ID 分组计算最大 CPU 使用率,接着按最大 CPU 使用率降序排序,最后取第一行得到结果。