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