gpt4 book ai didi

sql-server - 计算 SQL Server 数据库中字符串的哈希值——值得付出努力吗?

转载 作者:搜寻专家 更新时间:2023-10-30 19:58:50 27 4
gpt4 key购买 nike

假设我的 SQL Server 2005 数据库中有一个百万行的表 [mytable],其中包含列:

  • 身份证
  • 一些领域
  • 另一个领域
  • 网址

这个系统中一个非常常见的查询是:

从 [mytable] 中选择 *,其中 url = ' http://www.somesite.com/some/really/long/url '

哪个会给我更好的性能:

a) 为 Url 列添加索引。

b) 添加一个额外的“url_hash”列,其中包含与 url 对应的数字散列,然后计算该散列以用于我的 where 子句,例如:

从 [mytable] 中选择 *,其中 url_hash = some-computed-hash 和 url = ' http://www.somesite.com/some/really/long/url '

(b) 是否值得额外的复杂性?我需要在插入和选择时计算哈希值。

2009 年 3 月 30 日更新

ID为主键

另外,上面的查询不应该有“*”。相反,选择列表应该是表中的所有字段。

“*”只是速记 - 很抱歉造成混淆。

2009 年 3 月 31 日更新

还有,忘了说,url_hash 字段上会有一个索引。

最佳答案

如果您只选择所需的列(与“*”相反),并在“Url”和所选列上创建覆盖非聚集索引,您将获得非常高效的查找。

关于sql-server - 计算 SQL Server 数据库中字符串的哈希值——值得付出努力吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/699499/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com