Я просматривал CROSS / OUTER APPLY
с коллегой, и мы изо всех сил пытаемся найти примеры из реальной жизни где их использовать.
Я потратил довольно много времени на изучение Когда мне следует использовать перекрестное применение вместо внутреннего соединения? и поиск в Google, но основной (единственный) пример кажется довольно странным (использование количества строк из таблицы в определить, сколько строк выбрать из другой таблицы).
Я подумал, что для этого сценария может быть полезно ВНЕШНЕЕ ПРИМЕНЕНИЕ
:
Таблица контактов (содержит 1 запись для каждого контакта) Таблица коммуникационных записей (может содержать n телефонов, факсов, электронной почты для каждого контакта)
Но с использованием подзапросов, общих табличных выражений, OUTER JOIN
с RANK ()
и OUTER APPLY
, похоже, все работают одинаково. Я предполагаю, что это означает, что сценарий неприменим к APPLY
.
Приведите несколько примеров из реальной жизни и помогите объяснить эту функцию!