CRYPT_GEN_RANDOM дает действительно случайное число? - PullRequest
0 голосов
/ 28 апреля 2019

Есть ли вероятность, что этот запрос даст тот же номер? Если да, то как сделать его действительно случайным?

select ABS(CAST(CRYPT_GEN_RANDOM(8) AS bigint))

1 Ответ

0 голосов
/ 28 апреля 2019

Есть ли вероятность, что этот запрос даст тот же номер?

Да.Но вы всегда можете сохранить значения в уникальном индексе, а также потерпеть неудачу или повторить попытку при столкновении.С 64 битами случайности вы можете сгенерировать несколько миллионов значений с небольшой вероятностью столкновения.

См., Например,

enter image description here https://preshing.com/20110504/hash-collision-probabilities/

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...