每日一题-4(找出连续出现的数字)

题4:

根据下表,编写一个SQL查询,查找所有至少连续出现三次的数字,返回的值可以任意排列。
在这里插入图片描述
方法一:窗口函数
本题考察的是连续出现,从题目连续3次数字相等,判断出“数字相等"和"Id连续"这2个条件。考察构建"连续Id数字相等"的思维构建能力
使用的函数:

  • 向上窗口函数lead:取出字段名所在的列,向上N行的数据,作为独立的列,代码lead(字段名,N,默认值) over(partion by …order by …)
  • 向下窗口函数lag:取出字段名所在的列,向下N行的数据,作为独立的列,代码lag(字段名,N,默认值) over(partion by …order by …)
    其中,默认值是指,当向上N行或者向下N行值时,如果已经超出了表行和列的范围时,会将这个默认值作为函数的返回值,若没有指定默认值,则返回Null。
select distinct Num as ConsecutiveNums 
from
  • 1
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值