如下语句:
Select a.* , b.*
From [DBServer].[DBName1].dbo.Tabel1 a,[DBServer].[DBName2].dbo.Table2 b
where a.ProdureID=b.ProdureID
执行上面这语句的速度非常慢,虽然表有10万条记录左右,
但当我分开查询一个表时,却就相对的快了很多很多。
百思不得其解。最后,无意中发现原来是[DBServer]这个服务器名惹的祸,
因为[DBName1]和[DBName2]是同在一台服务器上的,前面不需要服务器名,
所以,把它删掉了就可以了,执行速度恢复正常。
(注:本地网络中,有十来个SqlServer服务器,包括当前数据库及历史数据库)
本文通过一个具体的SQL查询案例,揭示了在同一个服务器上进行跨数据库表连接查询时,去掉不必要的服务器名称可以显著提高查询效率的现象。对于拥有大量记录的表,此优化手段能有效改善查询性能。
1636

被折叠的 条评论
为什么被折叠?



