假设我有这个指南:
{2A87E3E2-2B6A-4149-9F5A-1B76092843D9}
它实际上是否将其存储为数据库中的字母数字? (我不这么认为,因为它必须适合 16 个字节。)
如果没有,那么它是如何存储的呢? (我的猜测是十六进制数字,但我不确定。)
如何判断一个 GUID 是否大于另一个? (为了建立索引,您可能需要了解哪些信息.) 您是否像十六进制数字一样读取 GUID(用于比较)?
GUID 在内部存储为二进制 (16)。“使用唯一标识符数据”MSDN 上告诉你这一点。
这{
}
and -
不是价值的一部分。
GUID 可以“排序”并进行更大/更小的比较:请参阅规范“SQL Server 如何对 GUID 进行排序?”.
注意:这意味着他们don't按二进制排序(16)(除非你 CAST 我想......)
我看不到why你在现实生活中会想要这个(不是索引,我指的是现实世界):关于 NEWID 的“排序”潜力的唯一用途是用于随机行技巧ORDER BY NEWID()
您可以使用“升序”GUID(基于上面的文章)新顺序ID。然而,这种“排序”在 Windows 重新启动后不会继续 = IMO 毫无意义。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)