- カテゴリ:
UNIFORM¶
[min
, max
] を含む範囲で一様分布の疑似乱数を生成します。
構文¶
UNIFORM( <min> , <max> , <gen> )
引数¶
戻り値¶
min
または max
のいずれかまたは両方が浮動小数点数の場合、 UNIFORM は浮動小数点数を返します。 min
と max
の両方が整数の場合、 UNIFORM は整数を返します。
使用上の注意¶
この関数は RANDOM 関数に関連しますが、異なります。どちらの関数も一様分布を生成しますが、返される値の範囲には違いがあります。
RANDOM は、擬似乱数64ビット整数を生成します。シーケンスを繰り返すことができるオプションのシードを受け入れます。
UNIFORM は、指定された範囲でランダムな整数または浮動小数点数を生成します。
例¶
次の例は、UNIFORM 関数の使用方法を説明しています。以下の出力に表示される値は、これらの例を自分で実行したときに返される値とは異なる場合があります。
この例では、1から10(両端を含む)の範囲でランダムな整数を5つ生成します。
SELECT UNIFORM(1, 10, RANDOM()) FROM TABLE(GENERATOR(ROWCOUNT => 5));
+--------------------------+
| UNIFORM(1, 10, RANDOM()) |
|--------------------------|
| 6 |
| 1 |
| 8 |
| 5 |
| 6 |
+--------------------------+
この例では、0から1(両端を含む)の範囲で5つの浮動小数点数を生成します。
SELECT UNIFORM(0::FLOAT, 1::FLOAT, RANDOM()) FROM TABLE(GENERATOR(ROWCOUNT => 5));
+---------------------------------------+
| UNIFORM(0::FLOAT, 1::FLOAT, RANDOM()) |
|---------------------------------------|
| 0.1180758313 |
| 0.4945805484 |
| 0.7113092833 |
| 0.06170806767 |
| 0.01635235156 |
+---------------------------------------+
この例は、 gen
引数が定数の場合、出力も定数になることを示しています。
SELECT UNIFORM(1, 10, 1234) FROM TABLE(GENERATOR(ROWCOUNT => 5));
+----------------------+
| UNIFORM(1, 10, 1234) |
|----------------------|
| 7 |
| 7 |
| 7 |
| 7 |
| 7 |
+----------------------+