编写一个 SQL 查询,查找所有至少连续出现三次的数字。
+----+-----+
| Id | Num |
+----+-----+
| 1 | 1 |
| 2 | 1 |
| 3 | 1 |
| 4 | 2 |
| 5 | 1 |
| 6 | 2 |
| 7 | 2 |
+----+-----+
例如,给定上面的 Logs 表, 1 是唯一连续出现至少三次的数字。
+-----------------+
| ConsecutiveNums |
+-----------------+
| 1 |
+-----------------+
Soluton
SELECT DISTINCT
a.Num AS ConsecutiveNums
FROM
LOGS a,
LOGS b,
LOGS c
WHERE
a.Id + 1 = b.id
AND b.Id + 1 = c.Id
AND a.num = b.num
AND b.num = c.num;