具有相同值的两个 GUID



在 SQL Server 中,使用此代码创建具有相同值的拖曳 GUID 的概率是多少?

DECLARE @EmployeeID UNIQUEIDENTIFIER;
SET @EmployeeID = NEWID();

基本上,GUID 是一个 128 位数字,具有 6 个信息位和 122 个随机位。所以概率是 1/(2 122),其中 2122 = 5.31 * 1036

以下是我另一个答案的引用:

根据此文档 (RFC 4122),并与 C# 生成的 GUID 进行比较,它们是随机类型的。

此类型具有以下模式:xxxxxxxx-xxxx-4xxx-Vxxx-xxxxxxxxxxxx ,其中

  • x是随机数和
  • V 是一个位布局为 10yy 的数字,其中 yy 是两个随机位。

所以,这里有 122 个随机位中的 128 个。

相关内容

  • 没有找到相关文章

最新更新