generate seemingly random unique numeric ID in SQL Server

后端 未结 5 1819
被撕碎了的回忆
被撕碎了的回忆 2020-12-06 15:19

I need to use SQL Server to generate seemingly random unique 8-digit numeric ID (can pad zeros at front). Is there a built-in functionality for this? I saw

5条回答
  •  日久生厌
    2020-12-06 15:39

     --create
    --   table Tbl( idx int)
       DECLARE
       @unique_id int  
    
     SET @unique_id=  ( SELECT ROUND( 89999999 * RAND(
                                                       ) + 10000000 , 0
                                      )
                        )            
    IF not EXISTS( SELECT idx
                 FROM tbl
                 WHERE idx = @unique_id
             )
        BEGIN
            INSERT INTO  tbl( idx
                                   )
            VALUES( @unique_id
                  )
    
    SELECT @unique_id, * FROM tbl
        END;
    
        --TRUNCATE TABLE tbl
    

提交回复
热议问题