mt_random() 함수
' mt_random() ' 함수는 메르센 트위스터 의사 난수 생성기를 사용하여 0.0 - 1.0 범위의 의사 난수를 반환합니다. 주기 2 19937-1의 고품질 의사 난수를 빠르게 생성하고 분포가 좋은 오픈 소스 라이브러리입니다.
의사 난수는 몬테카를로 시뮬레이션과 같은 시뮬레이션에 탁월합니다. 의사 난수는 설문 조사에도 유용합니다. 예를 들어, 1,000,000개의 레코드가 있는 테이블에서 무작위로 1,000개의 레코드 샘플을 추출할 수 있습니다.
이 알고리즘 자체는 미래의 모든 반복을 예측하는 데 624회의 반복이 필요하기 때문에 암호화에 적합하지 않습니다. 이 함수를 해시 함수로 감싸는 것만으로도 암호학적으로 안전한 난수를 제공할 수 있습니다.
Netezza Performance Server 선형 합동 생성기 알고리즘을 기반으로 하는 ' random() ' 기능을 내장하고 있습니다. 메르센 트위스터 알고리즘은 특정 무작위성 애플리케이션에 선호되는 경우가 많습니다.
구문
mt_random = mt_random();
반환
이 함수는 0.0 - 1.0 범위의 의사 난수를 반환합니다.
예
다음 예는 Customer_Table 테이블에서 10개의 레코드로 구성된 분산 무작위 샘플을 가져옵니다:SELECT * FROM Customer_Table ORDER BY mt_random() LIMIT 10;