RAND (Transact-SQL)
適用於:SQL Server Azure SQL 資料庫 Azure SQL 受控執行個體 Azure Synapse Analytics
傳回介於 0 到 1 (不含) 之間的似隨機 float。
Syntax
RAND ( [ seed ] )
注意
Azure Synapse Analytics 的無伺服器 SQL 集區不支援此語法。
引數
seed
為提供初始值的整數運算式 (tinyint、smallint,或 int)。 如果未指定 seed,SQL Server 資料庫引擎 會隨機指派種子值。 只要指定初始值之後,傳回的結果一律相同。
傳回類型
float
備註
具有相同種子值的重複呼叫 RAND()
會傳回相同的結果。
如果是一個連接,如果
RAND()
以指定的種子值呼叫,則所有後續呼叫都會根據植入RAND()
的呼叫RAND()
產生結果。 例如,下列查詢一律會傳回相同的數位序列。SELECT RAND(100), RAND(), RAND();
當您在 或
INSERT
查詢中使用UPDATE
函RAND()
式時,所有受影響的數據列都會取得相同的值。
範例
下列範例會產生函式所產生的 RAND()
四個不同的隨機數。
DECLARE @counter SMALLINT;
SET @counter = 1;
WHILE @counter < 5
BEGIN
SELECT RAND() Random_Number
SET @counter = @counter + 1
END;
GO