窗口函数,也叫OLAP(Online AnallyticalProcessing,联机分析处理) ,可 以对数据库数据进行实时分析处理。
下面给大家准备了两道经典的窗口函数题目。并准备了清晰的解题思路,具体可以看图片。
第一题:求连续天数
下面表格是用户访问表users,记录了用户id (usr_ id)和访问日期(log_ date),求出连续3天下面表格是用户访问表users,记录了用户id以上访问的用户id。
解题思路:
我们需要根据这么一个简单的表,求出连续3天以上访问的用户。可以按照用户id给访问日期排名,然后再用访问日期减去排名,得到一个时间。如果用户是连续访问的,这个时间就是一样的。一个用户的这个时间如果出现3次及以上,说明这个用户连续访问了3天。
第一步:
先按照用户id (usr_ id) 对访问日期(log date)进行排名,这里要用到DENSE_ RANK() 这个窗口函数,用于给出排名序号。这个函数经常应用在给学生成绩进行排名。
查看结果,多了一个
到此这篇SQL窗口函数面试题(sql的窗口函数面试题)的文章就介绍到这了,更多相关内容请继续浏览下面的相关 推荐文章,希望大家都能在编程的领域有一番成就!版权声明:
本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。
如若内容造成侵权、违法违规、事实不符,请将相关资料发送至xkadmin@xkablog.com进行投诉反馈,一经查实,立即处理!
转载请注明出处,原文链接:https://www.xkablog.com/sqlbc/28527.html