在SQL Server中使用完全限定的表名对性能有任何影响吗?使用完全限定名称会影响性能吗?
我有一个查询,我在不同的数据库中加入两个表。 DBA建议在主机查询中省略数据库名称,我猜测它是用于性能或惯例。
所有表完全合格
USE [DBFoo]
SELECT * FROM [DBFoo].[dbo].[people] a
INNER JOIN [DBBar].[dbo].[passwords] b on b.[EntityID] = a.[EntityID]
首选?
USE [DBFoo]
SELECT * FROM [dbo].[people] a
INNER JOIN [DBBar].[dbo].[passwords] b on b.[EntityID] = a.[EntityID]
这实际上是否有所作为?
不会。使用“foo.dbo.people”与使用“people”不会有运行时性能提升。或相反亦然。图书推荐:“Inside SQL Server”,Kalen Delaney等人。 – paulsm4