这是一个一般性问题,而不是针对我自己的数据库。
这是一个简单的数据库示例。为简单起见,我不考虑数据类型,因为它们不感兴趣。
餐桌动物:
ID, Name, Specie, OwnerID
表所有者:
ID, Name, Street, City, Country
如果我这样做,现在性能会有所不同
SELECT o.Name
FROM [Animals] a
INNER JOIN (SELECT ID, Name FROM [Owner]) o ON o.ID = a.OwnerID
而不是简单地
SELECT o.Name
FROM [Animals] a
INNER JOIN [Owner] o ON o.ID = a.OwnerID
所以,我在想可能会提高性能,因为我不会在整张桌子上。但我也认为可能是 SQL 足够聪明,可以在内部做几乎相同的事情。
我试图在我自己的数据库中测量它,但我无法测量到足够大的差异,以确保它不仅仅是地板噪音。