mysql - 查找一组 n 个连续数字是否在 SQL 中重复
问题描述
我想知道一组 n 个连续数字是否针对特定分区重复。
假设我有deviceIds
一些recordid
值是连续的,设备生成的每条记录都增加 1。
所以我想知道是否recordid
再次重置并重新生成具有相同序列的记录。让我们通过下表来了解。
Device ID recordid DateTime
--------------------------------------------------
07777778999 2 18-12-2016 17:15
07777778123 10 18-12-2016 18:10
07777778123 10 18-12-2016 18:20
07777778999 3 19-12-2016 19:30
07777778999 4 19-12-2016 12:15
07777778999 5 19-12-2016 13:15
07777778999 6 20-12-2016 11:15
07777778123 11 20-12-2016 9:15
07777778123 12 20-12-2016 17:15
07777778123 13 20-12-2016 17:25
07777778123 14 20-12-2016 17:35
07777778999 7 20-12-2016 17:45
07777778999 8 20-12-2016 17:55
07777778999 4 20-12-2016 18:50
07777778999 5 20-12-2016 18:55
07777778999 6 20-12-2016 18:50
07777778999 7 20-12-2016 18:55
...
有很多设备,因此我们可以按设备对其进行分区,然后应用我们的查询来查找设备是否会重新生成数字,例如 07777778999,我们有记录 id 的 2、3、4、5、6、7、8 和然后数字从 4,5,6,7 等重新生成。
所以我想列出所有使用 SQL 重新生成的设备。所以上面的预期输出将是设备 07777778999
解决方案
尝试这个。
这将返回所有具有重新生成值的记录。
SELECT DeviceID,RecordId
FROM ResultSet
GROUP BY DeviceID,RecordId
HAVING COUNT(1)>1;
推荐阅读
- c++-winrt - Win2D如何画半个椭圆?
- php - 如何使用 php 和 mysql 在表中插入新列?
- node.js - 在实际调用我的 passwordMatch 函数之前,Passport 使用“错误密码”进行身份验证失败
- javascript - jQuery:从具有多个节点的 HTML 字符串中提取最顶层的 SVG 元素
- continuous-integration - 如何在 yml 文件中使用管道运算符
- python-3.x - XGetWindowProperty 和 ctypes
- java - WSDL 是否类似于 Java 接口?
- sql - 如何使用这些表格按降序打印所有模块和学习每个模块的学生人数?
- regex - 正则表达式匹配 rubular 但不是 Ruby
- java - 基于输入整数和返回数组的乘法 - 在循环时需要帮助存储数组