0

私はSQLとストアドプロシージャにかなり慣れていないので、少し行き詰まっています - どんな助けでも大歓迎です

各行をループして、生成しているランダム値を割り当てるにはどうすればよいですか?

これが私のStoredprocです:

CREATE PROCEDURE StoredProc8
AS
BEGIN

DECLARE @total INT 
DECLARE @Count INT = 0
DECLARE @Random INT = 0
SELECT @total = COUNT(CustomerID) FROM Customers
WHILE(@Count<= @total)
BEGIN


SELECT @Random = 2 * RAND()
EXEC ('update Customers set col1= ' + @Random )
SELECT @Count = @Count+1
END
END
4

1 に答える 1

1

単純に 0 または 1 をランダムに割り当てる必要がある場合は、ランダム シードで RAND() を使用できます。

UPDATE Customers SET COL1 = RAND(CHECKSUM(NEWID()))*2

デモ: http://sqlfiddle.com/#!3/31699/9

于 2013-10-12T02:13:03.993 に答える