编写一个 SQL 查询,查找所有至少连续出现三次的数字。
+----+-----+
| Id | Num |
+----+-----+
| 1 | 1 |
| 2 | 1 |
| 3 | 1 |
| 4 | 2 |
| 5 | 1 |
| 6 | 2 |
| 7 | 2 |
+----+-----+
例如,给定上面的 Logs 表, 1 是唯一连续出现至少三次的数字。
+-----------------+
| ConsecutiveNums |
+-----------------+
| 1 |
+-----------------+
连续出现三次就意味着id是挨着的
select distinct a.num "ConsecutiveNums"
from logs a,logs b,logs c
where a.num=b.num
and b.num=c.num
and a.id=b.id-1
and b.id=c.id-1
group by a.num