使用SQL2k5并假定[ID]列是聚簇PK并且[FK ...]列有两个查询中的非聚簇索引, WHERE子句更有效率?在联合查询中查询FK或PK更好吗
SELECT *
FROM [table1]
INNER JOIN [table2] ON [table2].[ID] = [table1].[FK_table2]
INNER JOIN [table3] ON [table3].[ID] = [table1].[FK_table3]
WHERE
[table1].[FK_table2] = @table2_id
AND [table1].[FK_table3] = @table3_id
OR
SELECT *
FROM [table1]
INNER JOIN [table2] ON [table2].[ID] = [table1].[FK_table2]
INNER JOIN [table3] ON [table3].[ID] = [table1].[FK_table3]
WHERE
[table2].[ID] = @table2_id
AND [table3].[ID] = @table3_id
是一个比较理想的或比其他的更好吗?性能差异是否会在一个之上引人注目?
是table11真的是table1的拼写错误吗? – 2010-09-20 18:53:33