Я пытаюсь сгенерировать строку, отформатированную как: 99-88-77, где три числа 2-разрядных чисел генерируются случайным образом.TSQL RAND() Проблема
Мой TSQL, который работает:
declare @result nvarchar(50)
DECLARE @counter smallint, @ci smallint, @cu smallint, @dc smallint
SET @ci=RAND()*100
SET @cu=RAND()*100
SET @dc=RAND()*100
--SET @counter = @counter + 1
set @result = CAST(@ci AS varchar(2)) +'-'+CAST(@cu AS varchar(2))+'-'+CAST(@dc AS varchar(2))
print @result
Производит (на этот раз): 16-37-30
Мне нужно, чтобы получить эту строку для каждой записи, вставленной в таблицу.
Теперь я хотел бы обернуть это в функцию, но, видимо, я не могу использовать RAND() в UDF.
Как я могу обернуть это для вызова при использовании инструкции insert?
+1 хороший способ вокруг rand() issue – wickedone
Отлично! Благодаря! – kaplooeymom