180.Mysql之连续出现的数字

Posted chaplin-code

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了180.Mysql之连续出现的数字相关的知识,希望对你有一定的参考价值。

编写一个 SQL 查询,查找所有至少连续出现三次的数字。

+----+-----+
| Id | Num |
+----+-----+
| 1  |  1  |
| 2  |  1  |
| 3  |  1  |
| 4  |  2  |
| 5  |  1  |
| 6  |  2  |
| 7  |  2  |
+----+-----+

例如,给定上面的 Logs 表, 1 是唯一连续出现至少三次的数字。

+-----------------+
| ConsecutiveNums |
+-----------------+
| 1               |
+-----------------+

解决方案:
  1. 使用临时表或者关联表存储不重复的数字
   2. 使用Having判断出现连续出现数字的次数和大于等于3
select l2.Num from Logs as l1
inner join (select distinct(Num) from Logs) as l2 on l1.Num = l2.Num
having sum(if(l1.Num >= l2.Num, 1, 0)) >= 3

 

 








以上是关于180.Mysql之连续出现的数字的主要内容,如果未能解决你的问题,请参考以下文章

如何计算bash中一列数据中的连续重复次数?

尺取法

在列表中找到相同数字的最大连续出现而不导入任何模块

每日SQL打卡​​​​​​​​​​​​​​​DAY 2丨连续出现的数字难度中等

六位数字序列连续出现,输出高电平并报警的verilog语言怎么写?

根据在 Spinner 中选择的数字,相同的片段应该出现在另一个之下。如何?