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
......