40.同时最大在线人数问题求解(炸裂map)

news2024/11/24 11:38:44

在这里插入图片描述

思路分析:
(1)对登录、登出数据构建map结构map(1, login_ts, -1, logout_ts),使用炸裂函数对该map做炸裂处理
(2)炸裂后成为了两列,一列存储1or-1表示登录登出(k),一列存储的是时间,既有登录的又有登出的
按照时间排序求k的累计值,要求窗口范围到当前行
(3)取出上一步计算出的最大值就是同时最大在线人数

注:
lateral view explode(map(1, login_ts, -1, logout_ts)) v as k, v会将map结构中的k-v转化为两列;
sum(k) over (partition by 1 order by v rows between unbounded preceding and current row) sum_user 整体化为一个组,按照时间做排序,求起始行到当前行窗口范围内的累计值

代码实现:

select
    max(sum_user) cn
from (
    select
        sum(k) over (partition by 1 order by v rows between unbounded preceding and current row) sum_user
    from user_login_detail
    lateral view explode(map(1, login_ts, -1, logout_ts)) v as k, v
) t;

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/1098009.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

C++指针解读(9)-- void指针和NULL

1、void指针的概念 void * 这种指针称为“空类型指针”,它不指向任何具体类型的数据,只提供一个纯地址。void 指针必须强制类型转换成具体类型的指针才有意义。 int i 3; void* p &i;//printf(" %d\n", *p); //报错 printf(" %d\…

8月19日PMP成绩,预计10月16日公布!附查询入口、流程

PMP的考试成绩一般在考后6-8周即可查询,8月PMP的成绩预计会在北京时间10月16日晚上公布,具体时间以官方公告为准。 如何查询8月考试成绩? 渠道一:收到PMI邮件提醒 当你注册PMI所使用的邮箱收到一封PMI发来的,标题为…

测试培训机构「某峰」测评调查报告

测试培训机构「某峰」测评调查报告 ⭐文章简介一、机构测评之受访者介绍二、老师傅-机构测评10问!第1问 你从哪里了解到这个培训机构?第2问 你为什么选择这家培训机构,它吸引你掏毛爷爷的点有哪些?第3问 回顾一下,从咨…

linux 学习:查找命令 find | grep

作者: 苏丙榅 原文链接: https://subingwen.cn/linux/commpress/ 在使用Linux系统的时候, 我们经常会需要查找某些文件,但是大多数情况下我们并不能确定这些文件的具体位置,这样的话就非常浪费我们的时间。Linux为我们提供了很多的用于文件搜索的命令, 如…

夜神模拟器安装教程

夜神模拟器是一款很好用的安卓模拟器,夜神模拟器最新版兼容性更强,稳定性也不错,简单操作使用便捷,可以有很好的游戏体验:运行完美 ,酣畅淋漓,喜欢的小伙伴可以在本站下载使用,本期小…

binutils工具下载

一、下载binutils工具binutils-2.28.tar.bz2 https://ftp.gnu.org/gnu/binutils/ 二、解压 tar -xvjf binutils-2.28.tar.bz2三、建立build目录 在binutils-2.28下创建目录build 指定编译目录: ../configure --enable-debug --prefix/home/zhangchuang/ld/bin…

【TES720D-KIT】青翼自研基于复旦微FMQL20S400全国产化ARM开发套件(核心板+底板)

TES720D-KIT是专门针对我司TES720D(基于复旦微FMQL20S400的全国产化ARM核心板)的一套开发套件,它包含1个TES720D核心板,加上一个TES720D-EXT扩展底板。 FMQL20S400是复旦微电子研制的全可编程融合芯片,在单芯片内集成…

SycoTec 4061主轴维修:主轴检测与维修过程记录

主轴是机器中关键的部件之一,其主要作用是传递动力并驱动机器运转。由于长期使用或其它因素,主轴可能会出现磨损、弯曲、变形等问题,这些问题都会影响机器的正常运转和精度。因此,对主轴进行及时维修和保养对于保证机器的正常运转…

【视觉算法系列1】使用 KerasCV YOLOv8 进行红绿灯检测(上)

提示:免费获取本文涉及的完整代码与数据集,请联系助理老师 peaeci122 使用最新“KerasCV YOLOv8”模型进行红绿灯检测的综合指南 YOLO目标检测模型已经进入了无数的应用领域,从监控系统到自动驾驶汽车。那么,如果在KerasCV框架下…

01背包(一) 01背包(二)动态规划

01背包(一) 二维数组 题目 背包最大重量为4。 物品为: 重量价值物品0115物品1320物品2430 问背包能背的物品最大价值是多少? 创建二维数组,dp[i][j]的含义是任意放入前 i 个物品放进在背包重量为j的时候的最大价值…

openssl生成SM2公私钥对命令详解

(1)获得openssl支持椭圆曲线算法列表 命令:openssl ecparam -list_curves 返回结果: secp112r1 : SECG/WTLS curve over a 112 bit prime field secp112r2 : SECG curve over a 112 bit prime field secp128r1 : SE…

051:mapboxGL改变bearing和pitch,变换查看视角

第051个 点击查看专栏目录 本示例是介绍演示如何在vue+mapbox中改变bearing和pitch,变换查看视角。bearing:地图的默认方位角(可选,表示 地图视口正上方中心点 在地图上 北偏东 的角度。默认值为 0)。pitch:地图的默认倾斜角度(可选,默认值为 0,范围为 0 ~ 85)。 直…

《持续交付:发布可靠软件的系统方法》- 读书笔记(四)

持续交付:发布可靠软件的系统方法(四) 第 4 章 测试策略的实现4.1 引言4.2 测试的分类4.2.1 业务导向且支持开发过程的测试4.2.2 技术导向且支持开发过程的测试4.2.3 业务导向且评价项目的测试4.2.4 技术导向且评价项目的测试4.2.5 测试替身 …

如何获取跑腿App源码并定制化你的业务

跑腿App源码是开发送货和快递服务平台的理想起点。它为你提供了一个现成的应用程序框架,可以帮助你快速进入这个竞争激烈的市场。本文将指导你如何获取跑腿App源码,以及如何将其定制化以适应你的业务需求。我们将以一个示例项目为基础进行说明。 步骤1…

故障维修无忧服务:OLED透明拼接屏的专业技术支持与保修服务

OLED透明拼接屏作为未来显示技术的领军者,以其卓越的画质和全方位的优势在市场上备受推崇。 本文将深入探讨OLED透明拼接屏的画质特点和独有的优势,并为您提供选购指南、价格表以及故障维修服务,助您了解并选择最适合的OLED透明拼接屏。 一、…

软考-系统开发基础

软件开发模型 瀑布模型 瀑布模型的优点是:容易理解,管理成本低;签掉开发阶段早期计划及需求调查和产品测试 V模型 V模型是瀑布模型的一个变体 注重测试,但测试放在编码之后 喷泉模型 原型模型 螺旋模型 综合了瀑布模型和原型模…

蔬菜水果生鲜配送团购商城小程序的作用是什么

蔬菜水果是人们生活所需品,从业者众多,无论小摊贩还是超市商场都有不少人每天光临,当然这些只是自然流量,在实际经营中,蔬菜水果商家还是面临着一些难题。 对蔬菜水果商家而言,线下门店是重要的&#xff0…

ubuntu 20.04 使用systemback自定义系统镜像和系统备份

ubuntu 20.04 使用systemback自定义系统镜像和系统备份 Systemback简介1. 安装 systemback16.0418.04 查看 2. 使用 systemback创建自定义镜像制作镜像制作中制作完成将镜像写入U盘 Systemback简介 Systemback是一个简单的系统备份和恢复应用程序,根据GPLv3许可条款…

2023年中国自动驾驶卡车市场发展趋势分析:自动驾驶渗透率快速增长[图]

自动驾驶卡车的技术原理是通过电脑算法控制车辆行驶,辅助驾驶员完成任务。其实现方式主要是基于传感器和计算处理技术。自动驾驶卡车可以随时感知周围环境,灵活避障,自适应调整行驶路径,相比之下传统卡车需要驾驶员进行手动操作&a…

2023最新闪聊远程获取通讯录PHP源码/附安装教程/php即时聊天源码/获取闪聊通讯录源码

源码介绍: 闪聊远程获取通讯录PHP,首先你需要在服务器上搭建Nginxmysql5.6php5.6phpMyAdmin的环境。接着,在app/database.php中配置好数据库路径。最后,在宝塔面板的站点管理中,将伪静态设置为tphinkphp即可。这样一来…