SQL Server 2008中允许的最大连接数是多少?
答案 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个表。
资料来源:课堂培训。