创建条目时,在列中生成一个随机且唯一的ID


Generate a random and unique ID in a column when an entry is created

当在表中创建条目时,如何使其中一列unique_id自动填充随机生成的整数?这可以直接从mysql中完成吗?我已经看到,你可以用时间戳等自动填充它,那么有可能用随机生成的整数自动填充它吗?

如果您需要一个唯一的数字用于id目的。您可以使您的列自动递增。记住,如果你要使用这个,你需要使它成为唯一的或主键。我认为这是最简单的方法。您将获得连续增量。

you can try this

SELECT FLOOR(10000 + RAND() * 89999) AS my_random_number
FROM mytable
WHERE "my_random_number" NOT IN (SELECT id FROM mytable)
LIMIT 1

或仅此SELECT FLOOR(RAND() * 1000000);

使用RAND()并将日期和时间与之连接,这样您就可以拥有一个唯一的数字。。

使用UUID函数,UUID被设计为在空间和时间上全局唯一的数字。http://dev.mysql.com/doc/refman/5.0/en/miscellaneous-functions.html#function_uuid