连续数据统计
题目大意:
编写一个SQL查询找出所有至少 连续 出现3次的数字。
例如,给定上面的Logs表,1是唯一至少连续出现3次的数字。
表格logs 如下
+----+-----+
| Id | Num |
+----+-----+
| 1 | 1 |
| 2 | 1 |
| 3 | 1 |
| 4 | 2 |
| 5 | 1 |
| 6 | 2 |
| 7 | 2 |
+----+-----+
想知道如何求解,希望得到详细的解答思路 代码有注释比较好。。谢谢了。
另外,我看到有段代码关于此题是这样写的
select distinct(a.Num)
from Logs a,Logs b,Logs C
where a.Id=b.Id+1
and a.Num=b.Num
and b.Id=c.Id+1
and b.Num=c.Num
想请教一下 where 哪儿的条件为什么是这样设置的?有点看不明白。