LeetCode实战:row_number函数用法
row_number函数用法
1、函数讲解2、LeetCode实战
1、函数讲解
(相关资料图)
语法:ROW_NUMBER() OVER(PARTITION BY COLUMN ORDER BY COLUMN)
简单的说,row_number()从1开始,为每条分组记录返回一个数字,举例:
ROW_NUMBER() OVER(ORDER BY xlh DESC)
这里的用法是先将xlh列进行降序排序,再将降序后的每条记录返回一个序号。
row_number() OVER (PARTITION BY COL1 ORDER BY COL2)表示根据COL1分组,在分组内部根据COL2排序,而此函数计算的值就表示每组内部排序后的顺序编号(组内连续的唯一的)
初始数据显示为: 我们的目标是根据部门进行分组,并显示每个部门的工资等级 SQL语句:
select * ,Row_number() OVER(partition by deptid order by salary DESC) rankFORM employee
最终显示结果为:
2、LeetCode实战
题目是LeetCode上的题目: 编写一个sql查询,查找所有至少连续出现三次的数字。返回的结果表中的数据可以按任意顺序排列。 查询格式如下面的例子所示: 下面是具体是解题代码:
select distinct Num as ConsecutiveNums from( select Num,count(1) as SerialCount from (select id,Num, row_number() over(order by id) - row_number() over(partition by Num order by Id) as SerialNumberSubGroup from Logs ) as sub group by Num,SerialNumberSubGroup having count(1) >= 3 ) as res
上面的解题是参照题解里以为大佬的解题思路: 具体解题过程参照: 作者:neilsons 链接:https://leetcode-cn.com/problems/consecutive-numbers/solution/sql-server-jie-fa-by-neilsons/ 原始数据:
1、对原始数据编号,从1开始使用 row_number() over(表达式) 函数,使用Id来排序既row_number()
SELECT Id,Num,row_number() over(order by id) as SerialNumFROM ContinueNumber
2、使用原始数据另一维度排序,这些num值一样的分组排序,然后对其编号同样使用row_number() over(表达式),参数:(num分组,id排序)row_number() over(partition by num order by id)
SELECT Id,Num,ROW_NUMBER() over(partition by Num order by Id) as SerialGroupFROM ContinueNumber
3、通过上述1和上述2 看一下有什么规律吗?两个列(SerialNum,SerialGroup)对应相减,只要连续,相减得到的值是一样的。不连续相减得到的值也不同。
SELECT Id,Num, row_number() over(order by id) - row_number() over(partition by Num order by Id) as SerialNumberSubGroup FROM ContinueNumber
4、通过上述3,通过列Num和列SerialNumberSubGroup分组,最后拿到Num,就是求得的数据,去重(distinct)指:有可能同一个数字在多处出现三次以上。
SELECT DISTINCT Num FROM (SELECT Num,COUNT(1) as SerialCount FROM (SELECT Id,Num,row_number() over(order by id) -ROW_NUMBER() over(partition by Num order by Id) as SerialNumberSubGroupFROM ContinueNumber) as SubGROUP BY Num,SerialNumberSubGroup HAVING COUNT(1) >= 3) as Result
这个解题的核心是要想明白一个结论:如果一个num连续出现时,那么它出现的【真实序列】-它出现的次数一定是个定值。因为:
1、假设一个num出现后,它的 真实序列 为 i ,同时假设它是第 k 次出现的; 差值为 i-k.2、当它连续出现一次时,它的 真实序列 一定为 i+1 ; 它的出现次数显然也会+1,为 k+1 ; 差值为 i+1-(k+1)=i-k.3、当它连续出现第 n 次时,它的 真实序列 一定为 i+n;它出现的次数为 k+n;差值为 i+n-(k+n)=i-k.4、如果它不连续出现,假设m个其他num出现之后,它又出现了,则它的真实序列为 i+n+m,而出现的次数为 k+n+1;差值为 i-k+m-1 。
所以,上述解题大佬的做法其实就是: 第一步重排的serialNum表示:这个num出现的真实序列,也就是说在原始数据中,它是第几个出现的; 第二步重排的serialGroup表示:这个num是第几次出现的; 然后其他的步骤就比较容易想了。
标签:
相关推荐:
精彩放送:
- []前沿资讯!厦门出台保障性租赁住房优惠政策 包含金融、土地、税费等方面
- []当前观察:187亿美元!康菲石油2022年利润翻倍 加入石油巨头大丰收队列
- []现货黄金交易策略:决战非农,金价面临大跌风险?
- []世界简讯:常润股份:公司已预约于2023年4月11日披露2022年报
- []元道通信:公司目前该项目合作已经终止。相关信息以公司在巨潮网披露的公告为准祝您生活愉快
- []微速讯:青岛某共有产权房“爆雷”?城投公司回应来了
- []上海杨浦保障性租赁住房112项目复工 建成后可提供332套
- []头条:降息潮下,存量房房贷能降吗?
- []【世界播资讯】钦州:“十四五”期间保障性租赁住房发展目标为3000套(间)
- []天天播报:双乐股份:相比印度,公司在持续供货能力和供货的及时性、产品的环保性、齐全性和质量稳定性上具有较大优势
- []社保卡怎么绑定银行卡(社保卡重新绑定银行卡)
- []去银行存钱可以特批信用卡不(储蓄卡存钱可以办信用卡吗)
- []天天即时看!人没到60岁死了农村养老保险白交了吗(人没到60岁死了社保白交了吗)
- []今日热讯:高凤笃学诵读翻译_高凤痴迷诵读译文
- []每日速递:中金:对港股维持积极看法
- []速读:宁波购房最高送18万消费券!
- []头条焦点:黄金因获利了结回调,专家仍看好其2023年表现!
- []全球实时:浩洋股份:公司目前两个提升产能的募投项目正在有序加快推进中,项目投产后将为公司提升较大的产能
- []世界观速讯丨力合科技:公司坚持以自主创新为主的技术发展战略,研发生产具有自主知识产权的国产化仪器设备
- []尚品宅配8亿元定增募资获深交所通过
- []环球简讯:地产“阳康”了吗?
- []纽泰格:公司目前已与部分空气悬架客户在业务洽谈中,已经被纳入供应商体系
- []效仿恒大?石家庄房企润江集团要搞新能源汽车,焦贺钱从哪来
- []快报:今年1月楼市低迷 内房股多数受压 合景泰富集团(01813)跌6.83%
- []观热点:房企年内融资已近900亿元
- []世界今亮点!硕贝德:公司持续批量为北美客户提供了ARVR天线及散热产品
- []环球视讯!【BT金融分析师】Carvana股价暴涨108%,分析师称上演了一幕绝地求生的戏码
- []新资讯:一张图:黄金原油外汇股指"枢纽点+多空占比"一览(2023/02/03周五)
- []全球热文:* 理想汽车跌超5%,成交额超4.70亿港元
- []今日讯!这家储能公司境外毛利率超境内3倍
- []播报:原单位社保不给减员怎么办(停保不给办减员怎么办)
- []全球关注:锂电材料产销量增长 贝特瑞2022年预盈超21亿元
- []消息!60MW/120MWh储能电站投产!
- []怎样用花呗还信用卡还款(怎样用花呗还信用卡还款)
- []平安产险正式编制员工待遇(平安集团b类员工薪酬)
- []天天新动态:信用卡最高可分期金额什么意思呀(信用卡最高可分期金额什么意思)
- []出租车挡道被消防车剐蹭后负全责详细内容
- []环球热门:中南建设:1月合同销售金额32.4亿元
- []全球视讯!中英科技:截至1月31日,公司股东总数为11501户
- []当前视点!中粮置业40亿元小公募债券获深交所通过
- []当前关注:江西全省2023年度保障性租赁住房筹集(开工)目标任务为165766套(间)
- []世界通讯!香港一月一手私宅买卖起步回升 录341宗
- []隔离霜和防晒霜一样吗?隔离霜和防晒霜的区别是什么?
- []热消息:华润置地48.8亿港元认购香港14.7万平商住项目45%股权
- []当前滚动:新年祝福怎么写?新年对同事的祝福语有哪些?
- []六一儿童节给心仪的女朋友送什么礼物?适合送女朋友的礼物推荐
- []国内光刻气产品进入ASML供应链!电子特气国产替代将加速提升
- []【世界聚看点】宁德时代回应海外上市
- []世界快资讯:千山暮雪刘恺威大结局是什么?千山暮雪剧情介绍
- []全球微动态丨阳光车险和平安车险哪个好一点(平安车险和人保车险哪个好)
- []曹操墓是怎么发现的?曹操墓在哪里?
- []环球速看:兰州至西藏经过哪里?自驾游经过的地方有哪些?
- []环球微头条丨国轩电池装车易捷特,进入雷诺-日产-三菱联盟供应商体系
- []【世界速看料】男士t恤哪个牌子好?男士t恤较好的品牌有哪些?
- []街篮手游哪个中锋好?最强中锋有哪些推荐?
- []天天快报!成语壮志凌云是什么意思?壮志凌云出自哪里?
- []北京社保还有存折吗(北京社保卡没有存折能用吗)
- []全球热门:浙江景宁绿电100%泛微网工程正式投运
- []天天最新:燃料电池企业“签约潮”背后
- []世界百事通!企事业养老金什么时候并轨(企事业单位养老金并轨实施时间)
- []6.5亿元!江特电机拟在江西高安投建年产3万吨碳酸锂项目
- []最资讯丨华菱线缆:公司未参加该项目投标
- []财面儿|景瑞控股1月合约销售额3.42亿元
- []讯息:港1月住宅楼宇买卖合约3051份 按月上升21.7%
- []天天简讯:首钢商业地产6.36亿元ABS状态更新为“已受理”
- []前沿热点:成都城建30亿元供应链ABS项目状态更新为“已反馈”
- []全球看热讯:家居丨东方雨虹:控股股东李卫国1637.43万股股份质押展期
- []当前观点:恩捷股份:公司各项生产经营活动均有序进行;隔膜产品可存放时间较长
- []快可电子:今年将有上海光伏展、德国慕尼黑光伏展、各级光伏协会等机构举办的展会
- []勘设股份:投资者朋友截至2023年1月20日,公司股东总户数为22436
- []香港旅游业用工需求大增,迪士尼乐园开过万月薪招服务员且无学历要求
- []环球观点:湖北大悟抽水蓄能电站项目开工
- []焦点观察:农业户口买房能否办理银行按揭贷款
- []【环球快播报】华夏航空:遭处罚?
- []3年漫长资产重组收尾,云南城投从此不再是“房企”
- []全球快资讯丨房企去年业绩分化明显:28家预盈、36家预亏总额超千亿
- []洪汇新材:截至2023年1月31日,公司股东人数为10,151户
- []今日聚焦!龙洲股份:公司现代物流业务涵盖了沥青供应链、港口码头综合服务、物流园区经营等
- []当前视点!“招沪籍单身,酬金20万”,上海10万+红盘的工地外,有人做起了房票买卖生意
- []快手上的内科医生刘勇刚——尽职尽责,精益求精
- []众业达:投资者朋友截至目前,公司无AIGC技术应用及技术储备
- []标准股份:截至2023年1月31日,公司股东人数约为2.51万户
- []【焦点热闻】每经热评|提前还房贷人群增多 说明“房住不炒”收到了实效
- []如何正确应对流感问题?流感灵胶囊提供专业助力
- []集中供地制度被取消?权威部门回应
- []世界500强巨鳄入场!306亿储能电池超级工厂落地!
- []每日热点:丰元(云南)年产20万吨磷酸铁锂正极材料项目一期投产
- []海基新能源推出首款375Ah大容量储能电芯和钠离子电池
- []天天热门:甘肃省宕昌抽水蓄能电站预可研审查会议召开
- []滚动:鼎胜新材与LG新能源签约 四年提供约6.1万吨锂电池铝箔
- []个人参保日期和首次参保日期不同(参工时间和参保时间不一致怎么办)
- []【世界聚看点】一份文件流传开来,集中供地制度要取消?专家回应:不可能
- []环球消息!豪森股份:豪森公司通过为客户提供汽车生产制造“软硬结合”一体化的制造解决方案获得营业收入及利润
- []环球视点!10万股东请留意!两家A股公司同日公告触及退市!这些公司也拉响警报(名单)
- []环球视讯!杭州:截至2022年底累计筹集保障性租赁住房房源14.6万套
- []全球信息:福蓉科技:截至2023年1月31日股东数为16656户
- []有小额贷款可以申请车贷吗(有小额贷款可以申请车贷吗)
- []全球今头条!音像资料
- []每日关注!深圳社保转到惠州去怎么转的(深圳社保转到惠州去怎么转)
- []游客行李被酒店清出房间、司机中途甩客,西双版纳旅游乱象频现
- B站注册资本增幅400%至5亿 目前由陈睿全资持股
- 光源资本出任独家财务顾问 沐曦集成电路10亿元A轮融资宣告完成
- 巨轮智能2021年上半年营收11.24亿元 期内研发费用投入增长19.05%
- 红枣期货尾盘拉升大涨近6% 目前红枣市场总库存约30万吨
- 嘉银金科发布2021年Q2财报 期内净利润达1.27亿元同比增长208%
- 成都银行2021上半年净利33.89亿元 期内实现营收同比增长17.27亿元
- 汽车之家发布2021年第二季度业绩 期内新能源汽车品牌收入增长238%
- 中信银行上半年实现净利润290.31亿元 期末不良贷款余额706.82亿元
- 光伏概念掀起涨停潮交易价格创新高 全天成交额达1.29亿元
- 上半年生物药大增45% 关键财务指标好转营收账款持续下降
- 社保绑定的银行卡能取钱吗(社保卡绑定银行卡可以取钱吗)
- 世界报道:无锡建投20亿元小公募项目状态更新为“已反馈”
- 每日头条!星巴克第一财季全球净新开459家门店 中国门店总数达6090家
- 【焦点热闻】珠海华发集团15亿元公司债将于2月6日付息 票面利率为4.32%
- 环球动态:最新龙虎榜:机构买入云从科技超1亿,知名游资买入蓝英装备
- 不是厦门户口去鼓浪屿去哪个码头(非厦门户口去鼓浪屿从哪个码头)
- 每日时讯!乙肝医保能报销吗(乙肝门诊检查费用能报销吗)
- 中国人寿为什么在美国上市(中国人寿为什么在美国上市)
- 微资讯!乙肝干扰素2022年能报销吗医保(乙肝干扰素2022年能报销吗)
- 当前头条:北京医保存折和医保卡里的钱一样吗(北京医保存折和卡有什么区别)
- 天天快资讯:信用卡追回利息对卡有影响吗(信用卡退息对信用卡有影响吗)
- 体外碎石可以医保报销吗(门诊做体外碎石住院医保能报销吗)
- 今日最新!车保险理赔流程怎么赔付
- 世界快看:财意险都是包括什么
- 【独家焦点】楼市观察丨金光华再推别墅“回锅” 2022深圳楼市中的冷热参差
- 运险费是退货时不用付运费吗
- 最新资讯:英力特:截止2023年1月31日,公司股东总数为29,360
- 天天观天下!在海洋运输货物保险中,共同海损属于
- 30岁女子养胃2年,胃炎反而加重,医生:这1水或是胃炎“加速器”
- 环球信息:二连浩特向浩贸易有限公司
- 上海平安银行是正规银行吗(平安银行是正规银行吗2020)
- 全球快播:海德股份:2月1日公司高管曹体伦、廖绪文增持公司股份合计4.17万股
- 栖霞建设:副总裁汤群辞职
- 头条:科伦药业:2月1日公司高管冯昊、赖德贵增持公司股份合计7.4万股
- 全球消息!CBA新消息!篮协再颁新规,辽篮又被针对,广东男篮成赢家
- 五险能单独买几项吗(五险能单独买几项吗)
- 证监会:在促进房地产平稳健康发展等重点领域推出更多务实举措
- 当前快讯:证监会:稳妥有序化解私募基金、债券违约等重点领域风险
- 九典制药:2月1日公司高管段立新减持公司股份合计130.03万股
- ST路通:2月1日公司高管庄小正减持公司股份合计2万股
- 华夏幸福49.6亿美元债以发新债券向债权人分配方式实施重组交割
- 世界快资讯丨深房中协:严禁房地产中介机构等参与违规利用“经营贷”
- 热资讯!顺丰同城:转换H股将于2月7日在联交所上市
- 【环球热闻】ST商城下修2022年业绩预告 预计亏损额增至2.28亿元左右
- 泰福泵业:2月1日公司高管毛世良减持公司股份合计2万股
- 全球资讯:66鸿运b型保险98版利差返还型怎么样(鸿运a型保险98版利差返还型领取)
- 60岁前身故社保退多少钱一个月(人去世社保卡怎么退保)
- 全球热议:如何投诉光大信用卡(怎么投诉光大信用卡银行)
- 行动教育:1月18日至1月31日公司高管李宜增持公司股份合计8000股
- 北辰实业:北辰集团委托北辰商管提供辰运物业及亚市管理服务
- 泰禾智能:2月1日公司高管王金诚减持公司股份合计47.75万股
- 每日时讯!奥来德股东曲志恒减持7350股 套现41.7万 2022年前三季度公司净利1.12亿
- 【全球报资讯】铂力特:2月2日公司高管雷开贵减持公司股份合计10万股
- 全球热讯:天津中绿电:不存在房地产业务及募资投入房地产情况
- 今日热文:中南建设1月合同销售金额32.4亿 同比下滑近三成
- 每日快看:省广集团:公司根据客户需求开展相关业务
- 全球今亮点!华侨城“18侨城03”公司债将兑付并摘牌 存续规模0.4亿元
- 三部门联合发布高森林火险橙色预警
- 世界速讯:中南建设近期累计被动减持约1.63亿股 占总股本4.26%
- 焦点速看:安达维尔:2022年度公司营收情况请关注公司将于4月18日在巨潮资讯网披露的年度报告
- 每日快报!为什么养老保险和医疗保险月份不一样(为什么养老保险和医疗保险月份不一样)
- 全球快资讯:信贷公司贷款收取多少手续费合适(信贷公司贷款收取多少手续费合理)
- 环球报道:华贸物流:股东计划减持公司股份 累计拟减持不超过93.03万股
- 天天新资讯:醋化股份:2月2日公司高管庆九、帅建新、钱进、薛金全、顾清泉、丁彩峰减持公司股份合计408.96万股
- 【环球快播报】百纳千成:影视项目的最新动态请关注公司官网或公司微信公众号“百纳千成”
- 【世界播资讯】锦和商管向北京亿鹏所提供2300万元财务资助 已全部转为股权转让款
- 全球视点!福建投资开发5亿元公司债券将付息 利率3.69%
- 创世纪:公司五轴机床正持续开发中,部分型号已进入小批量生产阶段;3C类机床订单尚在逐步恢复中
- 天天要闻:迈普医学:公司产品有在部队医院中使用
- 酒店业率先复苏,超七成企业春节营收恢复至疫前
- 精选!民生信用卡最低还款额及利息怎么计算的(民生信用卡还款额度计算方法)
- 微动态丨中国人寿人士助理(中国人寿人事助理是做什么)
- 当前讯息:肋间神经炎
- 最资讯丨新地NOVO LAND 第2B期已取得预售楼花同意书
- 天天看热讯:景瑞控股1月合约销售额3.42亿元 同比下降46%
- 焦点速递!顾家家居:截止2023年1月底已累计回购54.53万股 耗资逾2000万元
- 郑中设计:截至2023年1月31日公司股东人数为13,096户
- 每日看点!青岛市一季度394个城市更新建设项目集中开工
- 新资讯:旷达科技:芯投微及其控股公司产品已有用于模组的批量订单
- 世界快报:天虹股份:一期增持计划所持公司162万股非交易过户已登记完成
- 世界快看点丨百联股份:公司将严格按照上交所的相关规定履行信息披露义务
- 155亿之后又108亿!你投的嘛,偶像!
- 全球热点!充电桩建设既要速度更要质量
- 环球热门:比亚迪股份有限公司董事长兼总裁王传福:打造新能源汽车王牌
- 赣锋去年净利预计超180亿元,同比增长最高320%
- 年满60岁可以参加职工医保吗(满了60岁能买职工医保吗)
- 天天微资讯!早上可以还信用卡吗(信用卡还款日凌晨就能还款吗)
- 佛山村田五矿精密材料有限公司关于绿色电力供应的合同签订到2030年,实现100%绿色电力生产
- 沧州明珠2022年目标销售2.86亿㎡隔膜 拟受让明珠锂电10%股权
- 2023原油市场展望,中海油的投资机会
- 当前快看:上游震荡博弈 光伏组件定价遇阻观望(2023.2.2)
- 环球速讯:TOP10的变与不变!2022中国市场动力电池装机解析
- 每日动态!1.47GW!国华投资发布2023年第一批光伏组件(182、210)采购项目
- 山羊胡子怎么画?山羊胡子的画法?
- 通讯!网络中tag什么意思?网络中tag是指什么?
- 孤战的演员有哪些?孤战剧情介绍
- 每日热门:重案六组佟林是好是坏?重案六组佟林扮演者是谁?
- 世界快资讯:气功大师王林有什么本事?王林资料介绍
- 创造营王艺晨为什么退赛?创造营节目组给出的理由是什么?
- 北京海淀成为全国首个生产总值破万亿的地市级区县
- 【聚看点】2月2日焦点科技涨停分析:跨境电商,医疗信息化,金融科技概念热股
- 全球观察:关于雷锋的资料有哪些?雷锋的故事有哪些?
- 每日热门:网络上曹县是什么梗?曹县是什么意思?
- 永贵电器:公司的液冷超充枪产品已经实现批量生产和销售
- 天天简讯:兔子真的不吃窝边草吗?兔子不吃窝边草的原因是什么?
- 世界新资讯:合景悠活参股成立安化梅山城市运管公司 持股51%
- 中国有许多伟大的历史人物 中国伟大的历史人物有哪些?
- 安泰科技:公司产品不涉及太阳能光伏钙钛矿电池领域
- 热点聚焦:商务部:2022年实物商品网上零售额同比增6.2% 直播电商消费亮眼
- 洛阳:个人首套房首付比例两成 年内买新房最高可补贴1万元