我想在以下两种情况的表现之间做出决定。
OR
我有以下几点可以玩:
答案 0 :(得分:1)
不要创建冗余数据。
使用联接并在联接字段上使用COVERING INDEX
,或者在联合字段(FK字段)的索引中使用INCLUDE
table2.field。
CREATE NONCLUSTERED INDEX IX1
ON Table2 (YourFK_Field)
INCLUDE (TheRedundantField);
这样,当SQL Server读取IX1时,它也会读取TheRedundantField。
你也可以像这样创建覆盖索引
CREATE NONCLUSTERED INDEX IX1
ON Table2 (YourFK_Field, TheRedundantField)
但这不是一个好主意,因为可能TheRedundantField不是关键字段