mssql 의 rand() 와 newid() 조합으로 난수값 문자1 + 숫자 난수 9자리 생성해 봤습니다.
Create Table #TEST1( PrizeNumber Varchar(10) ) DECLARE @i int SET @i = 1 WHILE(@i < 10000) BEGIN insert into #TEST1 (PrizeNumber) values( 'K' + CONVERT(VARCHAR(9),CONVERT(INT,RAND(CAST(NEWID() AS VARBINARY )) * 899999999 + 100000000)) ) SET @i = @i + 1 END select len(PrizeNumber) from #TEST1 where len(PrizeNumber) > 9 drop table #TEST1
1천번 정도 돌려봤는데, 중복된 값이 존재하지 않았습니다. 자리숫자도 정확하게 10자리가 되고요.
K715844590 K344857360 K409153178 K665529312 K862740726 K653649458 K367433833 K820693313 K884605899 K685176111 K333481809
......
* 단축키는 한글/영문 대소문자로 이용 가능하며, 티스토리 기본 도메인에서만 동작합니다.