Использует ли производный запрос в операторе FROM критерии из объединения? - PullRequest
2 голосов
/ 05 февраля 2020

У меня есть таблица «встреч» с уникальным идентификатором и датой, а также таблица дополнений, которые содержат одинаковые идентификаторы и несколько дат обновления. Учитывая набор встреч, которые я указываю, мне нужно знать, когда он последний раз обновлялся.

Мой текущий запрос выглядит примерно так:

SELECT
     enc.encounter_id,
     ISNULL(addend.date,enc.date) date
FROM
     encounters enc
     left outer join (select addendums.encounter_id, 
                        max(addendums.update_date) 
                  from addendums 
                  group by addendums.encounter_id) addend on addend.encounter_id=enc.encounter_id
WHERE
     *some criteria available on enc but not addend*

Это работает, как и ожидалось, но я Я обеспокоен тем, что я запускаю производную таблицу AdDEND для всех строк Соответствует ли план критериям объединения и запускает ли производную таблицу для каждого идентификатора встречи? Или производная таблица выполняется для всех строк каждый раз?

...