Вы всегда можете использовать CROSS APPLY
там, где вы используете INNER JOIN
.
В случае, если эти два значения эквивалентны, оптимизатор SQL Server не рассматривает их по-разному в моем опыте.Поэтому я не придерживаюсь мнения, что CROSS APPLY
быстрее.Если сравнивать яблоки с яблоками, то производительность во всех планах запросов, которые я видел, одинакова.
INNER JOIN
удобнее писать.Кроме того, это идиоматично.Поэтому он наиболее разборчивый и ремонтопригодный.INNER JOIN
также более широко поддерживается, хотя это, вероятно, не имеет значения для SQL Server.Я также считаю, что многие разработчики просто не знают CROSS APPLY
.