카테고리:

데이터 생성 함수

UNIFORM

포함 범위 [min, max]에서 균일하게 분포된 의사 난수를 생성합니다.

구문

UNIFORM( <min> , <max> , <gen> )
Copy

인자

min

생성된 숫자의 최소값(포함)을 지정하는 상수입니다.

max

생성된 숫자의 최대값(포함)을 지정하는 상수입니다.

gen

균일한 난수의 원시 원본 역할을 하는 식으로, 일반적으로 RANDOM 함수입니다. 자세한 내용은 데이터 생성 함수 사용법 노트 를 참조하십시오.

반환

min 또는 max 중 하나 또는 둘 다 부동 소수점 숫자인 경우 UNIFORM 은 부동 소수점 숫자를 반환합니다. minmax 가 모두 정수인 경우 UNIFORM 은 정수를 반환합니다.

사용법 노트

이 함수는 RANDOM 함수와 관련이 있지만 다릅니다. 두 함수는 모두 균일한 분포를 생성하지만, 반환되는 값의 범위에는 차이가 있습니다.

  • RANDOM 은 의사 난수 64비트 정수를 생성합니다. 이 함수는 시퀀스를 반복할 수 있는 선택적 시드를 허용합니다.

  • UNIFORM 은 지정된 범위에서 임의의 정수 또는 부동 소수점 숫자를 생성합니다.

SELECT uniform(1, 10, random()) FROM table(generator(rowCount => 5));

--------------------------+
 uniform(1, 10, random()) |
--------------------------+
 6                        |
 4                        |
 7                        |
 9                        |
 4                        |
--------------------------+
Copy
SELECT uniform(0::float, 1::float, random()) FROM table(generator(rowCount => 5));

---------------------------------------+
 uniform(0::float, 1::float, random()) |
---------------------------------------+
 0.2895427479                          |
 0.7178660941                          |
 0.6925603163                          |
 0.05914526824                         |
 0.8243151404                          |
---------------------------------------+
Copy
SELECT uniform(1, 10, 1234) FROM table(generator(rowCount => 5));

----------------------+
 uniform(1, 10, 1234) |
----------------------+
 7                    |
 7                    |
 7                    |
 7                    |
 7                    |
----------------------+
Copy