SQL Server 2008中允许的最大连接数是多少?

时间:2010-04-01 07:02:54

标签: sql-server-2008 join

SQL Server 2008中允许的最大连接数是多少?

4 个答案:

答案 0 :(得分:13)

其他答案已经直接回答了您的问题

  

仅限于可用资源

但是,即使SQL Server成功编译了您的查询计划并不意味着您应该这样做。您拥有的连接越多,可能的查询计划的空间就越大,您可能会获得非常次优化的计划。

对于具有12个连接的查询,可能的连接顺序数为28,158,588,057,600。另外,每个连接可以有三种可能的算法(散列,嵌套循环,合并)

在“SQL server 2005实用故障排除”一书中,Cesar Galindo-Legaria说

  

如果您加入超过20个表,则优化器可能不是   审查整个搜索空间,但更多地依赖启发式....   我们已经看到了运行常规查询的应用程序   100张桌子。虽然可以运行这么大的查询,但是你   在这些情况下真的是在扩展系统,应该是非常的   小心这么远

答案 1 :(得分:10)

列出了{@ 3}}

的SQL Server限制

每个查询的表数量仅受可用资源量的限制。

答案 2 :(得分:10)

在SQL Server 2008中,SELECT中可以拥有的最大表数仅受可用资源(source)的限制。

在SQL Server 2005中,单个SELECT(source)有256个表限制。

但是,如果你正在接受那些数字,那么我会有点担心这个问题!

答案 3 :(得分:-4)

对于inner join,最多可以加入256个表。 对于outer join,最多可以加入2个表。

资料来源:课堂培训。