Есть ли разница в производительности между этими двумя версиями одного и того же запроса?
--Version 1
SELECT p.Name, s.OrderQty
FROM Product p
INNER JOIN SalesOrderDetail s on p.ProductID = s.ProductID
--Version 2
SELECT p.Name, s.OrderQty
FROM Product p
INNER JOIN (SELECT ProductID, OrderQty FROM SalesOrderDetail) s on p.ProductID = s.ProductID
Я слышал, (от администратора баз данных ), что версия 2 работает быстрее, потому что она извлекает во внутреннем операторе SELECT только те столбцы, которые требуются для запроса. Но это кажется бессмысленным, поскольку производительность запроса (, как я знаю ), основана на количестве затронутых строк и возвращенном окончательном списке столбцов.
Планы запросов для обоих идентичны, поэтому я предполагаю, что между ними нет никакой разницы.
Я прав?