我的问题是我需要在服务器上发出请求:
https://INeedTheDocsWithThisId="id"
“id”需要介于 1 到 1000 之间。 我的问题是我现在使用自动增量,这在 ids 中留下了漏洞。
示例:我的 ID 为:1,2,3,4。如果我删除 2。下一个将是 5 而不是 2。
如何创建一个函数,自动选择 1 到 1000 之间未使用的最小数字?
谢谢大家。
最佳答案
以下 SQL 可用于查找 ID 中的漏洞。它使用将表连接到自身(别名为 a
和 b
),并在未找到 ID + 1 的记录时返回最低的 ID + 1。它速度很快,但不会在表中的第一条记录之前找到漏洞。
SELECT MIN(a.ID) + 1
FROM YourTable a
LEFT JOIN
YourTable b
ON a.id + 1 = b.id
WHERE b.id IS NULL
AND a.id < 1000;
关于mysql - SQL - 如何自动选择 1 到 1000 之间剩余的最小 id,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43364235/