RAND (Transact-SQL)

0 と 1 の間の範囲 (両端値は含みません) の float 型の擬似乱数を返します。

トピック リンク アイコンTransact-SQL 構文表記規則

構文

RAND ( [ seed ] )

引数

  • seed
    シード値となる整数型の (tinyint、smallint、または int) です。seed を指定しない場合は、SQL Server データベース エンジンによってシード値がランダムに割り当てられます。指定したシード値について、返される結果は常に同じです。

戻り値の型

float

説明

同じシード値を使用して RAND() を繰り返し呼び出しても、同じ結果が返されます。

1 つの接続について、指定したシード値で RAND() を呼び出すと、以降のすべての RAND() の呼び出しで、シード値を指定した RAND() の呼び出しに基づいた結果が生成されます。たとえば、次のクエリでは、同じ数値のシーケンスが常に返されます。

SELECT RAND(100), RAND(), RAND() 

次の例では、RAND 関数によって生成される 4 つの異なる乱数を生成します。

DECLARE @counter smallint;
SET @counter = 1;
WHILE @counter < 5
   BEGIN
      SELECT RAND() Random_Number
      SET @counter = @counter + 1
   END;
GO