这两个版本的性能是否存在差异?9 u1 p; _* |3 P$ G; Y" _# y
--Version 1SELECT p.Name,s.OrderQtyFROM Product pINNER JOIN SalesOrderDetail s on p.ProductID = s.ProductID--Version 2SELECT p.Name,s.OrderQtyFROM Product pINNER JOIN (SELECT ProductID,OrderQty FROM SalesOrderDetail) s on p.ProductID = s.ProductID我听说它(DBA)说版本2更快,因为它在内部SELECT查询所需的列只在句子中获得。但这似乎毫无意义,因为查询性能(据我所知)是基于受影响的行数和返回的最终列表。8 [- m, A9 Z. x6 L1 ~
两者的查询计划是一样的,所以我猜两者之间没有区别。! k' }, ` B7 k' G
我对么?* m8 B5 z, H. c( c+ J t, c1 y
/ y# {& x. E) y3 }$ `# m: s' W" L 解决方案: , N S0 q( [8 G0 }4 e; w 你是对的。您完全正确地检查了查询计划,而不是试图猜测优化器。-)