Rand()正在生成重复的数字,我希望生成唯一的数字

时间:2014-06-10 05:30:47

标签: mysql

您好,我有一个表格,其中包含存储ImageID,图像文件夹路径和图像名称的图像名称。持有 这些图像将通过mkdir()函数上传图像并自动创建一个文件夹 来自rand()函数的名称。

问题是每当我使用Rand()命名我的图像文件夹时,它都在重复。意味着rand()生成重复的数字,我应该做什么才能独特?实际上,图像ID是作为主键的文件夹的名称,我还需要唯一的值。

是否还有其他功能可用于生成唯一数字?

日期和时间功能正在使用:和/所以文件夹名称不能接受:和/.

有什么方法可以完成这个吗?

1 个答案:

答案 0 :(得分:0)

使用此功能可以在插入名称

之前检查图像文件夹名称是否存在
SELECT CONCAT('img',FLOOR(RAND() * 1000000000)) AS image_folder_name
    FROM table
    WHERE image_folder_name NOT IN (SELECT image_folder_column_name FROM table)
    LIMIT 1