回答

收藏

内联接vs内联接(SELECT。FROM)

技术问答 技术问答 343 人阅读 | 0 人回复 | 2023-09-14

这两个版本的性能是否存在差异?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                                                                你是对的。您完全正确地检查了查询计划,而不是试图猜测优化器。-)
分享到:
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则