gpt4 book ai didi

PHP( Grocery 增删改查)| Mysql在两个数字之间生成一个唯一的随机数

转载 作者:行者123 更新时间:2023-11-30 21:52:47 24 4
gpt4 key购买 nike

我在 Mysql 中用这些列创建了一个表

  • secretNumber(主键和 AI)
  • 姓名
  • 日期
  • 等...

我的想法是当我要向这个表中添加一个新项目时,自动生成一个“ secret 数字”但必须有 3 个要求:

  • 唯一编号
  • 随机编号每次我添加一个新项目
  • 在 0-1000000 之间

尝试使用像 uniqid() 这样的函数;和 mt_rand();但没有成功。

最佳答案

您可以为 0-1000000 之间创建 tmptable当你插入到表中时,使用来自 tmptable,之后你必须使用该表中的行删除它。或转发查询,但这很慢,因为每次都创建临时表。如果您创建 temptable 一次,那么它可能会很快。

CREATE TEMPORARY TABLE IF NOT EXISTS listtable(id INT NOT NULL AUTO_INCREMENT PRIMARY KEY, tmp INT NOT NULL); SET @s = CONCAT('INSERT INTO listtable (tmp) VALUES ',REPEAT('(1),',1000000),'(1)'); PREPARE stmt1 FROM @s; EXECUTE stmt1; SELECT id FROM listtable WHERE id NOT IN(select id from your table) order by rand() limit 1; DROP TABLE listtable;

关于PHP( Grocery 增删改查)| Mysql在两个数字之间生成一个唯一的随机数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46501662/

24 4 0
文章推荐: mysql - 一个 SQL 语句中的递归和非递归 ACL
文章推荐: c# - 在C#中为动态生成的按钮添加点击事件
文章推荐: c# - 如何将 List 转换为 List