什么时候我们不应该在sql server中使用哈希联接?

什么时候我们不应该在sql server中使用哈希联接?,sql,sql-server,sql-server-2008,join,Sql,Sql Server,Sql Server 2008,Join,什么时候我们不应该在sql server中使用哈希联接?使用哈希连接会导致查询性能降低的各种场景有哪些 请分享。哈希连接对于较大的数据集非常有效,尤其是在没有索引或表大小变化很大的情况下 在较小的数据集上不使用哈希联接的两个主要注意事项是: 内存限制 散列联接占用大量内存,请尝试将至少一个表完全加载到内存中。如果内存不足,它需要以递归方式将记录写入磁盘或tempdb 并发性 对于大量并发用户来说,哈希连接不是首选连接,因为如果需要为每个请求的连接构建两个内存中的表,它只会占用您的资源

什么时候我们不应该在sql server中使用哈希联接?使用哈希连接会导致查询性能降低的各种场景有哪些


请分享。

哈希连接对于较大的数据集非常有效,尤其是在没有索引或表大小变化很大的情况下

在较小的数据集上不使用哈希联接的两个主要注意事项是:

  • 内存限制

    • 散列联接占用大量内存,请尝试将至少一个表完全加载到内存中。如果内存不足,它需要以递归方式将记录写入磁盘或tempdb
  • 并发性

    • 对于大量并发用户来说,哈希连接不是首选连接,因为如果需要为每个请求的连接构建两个内存中的表,它只会占用您的资源