【发布时间】:2017-05-26 01:48:14
【问题描述】:
我正在使用这个 SQL 查询来创建一个对列唯一的新 ID。我想我很久以前从另一个 StackOverlow 帖子中得到了这个想法。但它不起作用,我不知道为什么。我会生成 100-200 个 ID(将每个 ID 添加到数据库中),有时我会得到重复。
这个查询有什么明显的问题吗?
SELECT FLOOR(RAND() * 99999) AS random_num
FROM listings
WHERE 'random_num' NOT IN (SELECT identifier FROM listings)
LIMIT 1
【问题讨论】:
-
为什么不能只使用自增字段?
-
这是一种我不希望下一行容易被猜到的情况
标签: mysql sql uniqueidentifier