RAND (Transact-SQL)
適用於:SQL ServerAzure SQL DatabaseAzure SQL 受控執行個體Azure Synapse Analytics
傳回介於 0 到 1 (不含) 之間的似隨機 float。
Syntax
RAND ( [ seed ] )
注意
若要檢視 SQL Server 2014 (12.x) 和舊版的 Transact-SQL 語法,請參閱 舊版檔。
注意
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
另請參閱
意見反應
https://aka.ms/ContentUserFeedback。
即將登場:在 2024 年,我們將逐步淘汰 GitHub 問題作為內容的意見反應機制,並將它取代為新的意見反應系統。 如需詳細資訊,請參閱:提交並檢視相關的意見反應