MySQL是否选择列的不同运行编号(缺少编号)? [我的示例表]
上面是一个简单的数据,我想得到列MySQL是否选择列的不同运行编号(缺少编号)? [我的示例表],mysql,select,myisam,Mysql,Select,Myisam,上面是一个简单的数据,我想得到列ref\u id中缺少的数字,所以,丢失的数字是6、7、9和10 我想要一些查询代码来获取它 [预期结果] 您可以在同一个表上使用LEFT JOIN执行此操作,并且仅选择具有第二个NULL值的对 SELECT u1.id as result FROM user_table u1 LEFT JOIN user_table u2 ON u1.id = u2.ref_id WHERE u2.id IS NULL 更新: 你可以测试 我的解决方案在这两种情况下都有效 创
ref\u id
中缺少的数字,所以,丢失的数字是6、7、9和10
我想要一些查询代码来获取它
[预期结果]
您可以在同一个表上使用
LEFT JOIN
执行此操作,并且仅选择具有第二个NULL
值的对
SELECT u1.id as result
FROM user_table u1
LEFT JOIN user_table u2 ON u1.id = u2.ref_id
WHERE u2.id IS NULL
更新:
你可以测试
我的解决方案在这两种情况下都有效
创建一个名为numbers
的表,其中包含所有可能的数字
做选择。。。从左边的数字加入你的表。。。哪里为NULL
以查找缺少的行
“我想在列ref_id中得到不同的数字”-什么不同?为什么从7点到10点没有什么不同呢?我们怎么知道在13点停下来?你们有带所有ref\u id
的桌子吗?我猜它引用了其他一些表。你使用的是什么版本的MySql?@草莓:真正的数据停止在1000万条记录上
+------------+
| result |
+------------+
| 6 |
| 7 |
| 9 |
| 10 |
+------------+
SELECT u1.id as result
FROM user_table u1
LEFT JOIN user_table u2 ON u1.id = u2.ref_id
WHERE u2.id IS NULL