力扣180--oracle--连续出现的数字

1
2
3
4
5
6
7
8
Create table Logs (id int, num int);
insert into Logs (id, num) values (1, 1);
insert into Logs (id, num) values (2, 1);
insert into Logs (id, num) values (3, 1);
insert into Logs (id, num) values (4, 2);
insert into Logs (id, num) values (5, 1);
insert into Logs (id, num) values (6, 2);
insert into Logs (id, num) values (7, 2);

编写一个 SQL 查询,查找所有至少连续出现三次的数字,返回的结果表中的数据可以按 任意顺序 排列,期望得到的结果

 答案

1
2
3
4
5
6
7
with t as
(select id, num, row_number() over(order by id) - row_number() over(partition by Num order by id) as gp
from logs)
select distinct num as ConsecutiveNums
from t
group by gp, num
having count(num) >= 3

 理解下面代码的输出结果

 

 

 

 

 

 

posted @   瘦多一点  阅读(9)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)
点击右上角即可分享
微信分享提示