标签: sql sql-server tsql
此查询是否有可能给出相同的数字?如果是,那么如何使其真正随机?
select ABS(CAST(CRYPT_GEN_RANDOM(8) AS bigint))
答案 0 :(得分:0)
此查询是否有可能给出相同的数字?
是的。但是,您始终可以将值存储在唯一索引中,并在发生冲突时失败或重试。使用64位随机性,您可以生成几百万个值,而发生碰撞的可能性很小。
例如,见
https://preshing.com/20110504/hash-collision-probabilities/