开发者社区> 问答> 正文

前两天去阿里巴巴的SQL面试题,求帮助?

已解决

有一个名为app的MySQL数据库表,app_id(应用ID), version_code(应用的版本号),download_count (当前版本的下载量)。

查询每个应用中总下载量最大的版本号和次数

+--------+--------------+----------------+

| app_id | version_code | download_count |

+--------+--------------+----------------+

| 1 | 10 | 90 |

| 1 | 11 | 100 |

| 1 | 10 | 20 |

| 2 | 15 | 10 |

| 2 | 16 | 15 |

| 2 | 17 | 30 |

| 2 | 16 | 5 |

| 3 | 2 | 50 |

+--------+--------------+----------------+

展开
收起
Carice 2021-10-04 15:58:42 1711 0
1 条回答
写回答
取消 提交回答
  • 网络规划设计师、敏捷专家、CISP、ITSS服务经理、ACA全科目、ACP4项、ACE、CBP、CDSP、CZTP等。拥有 PRINCE2 Foundation/Practitioner、CCSK、ITIL、ISO27001、PMP等多项国际认证。 专利5+、期刊10+、知识产权师。核心期刊审稿人。
    采纳回答

    您好,该题解法如下:

    select app_id,version_code,sum_donload
    from(select *,sum(download_count)as sum_donload,
    dense_rank()over(partition by app_id order by sum(download_count) desc) as dr
    from app
    GROUP BY app_id,version_code)as x
    WHERE dr =1;
    
    2021-10-04 16:18:37
    赞同 展开评论 打赏
问答排行榜
最热
最新

相关电子书

更多
阿里云技术面试红宝书 立即下载
超全算法笔试-模拟题精解合集 立即下载
程序员面试宝典 立即下载