얼마 전 Brent Ozar는 SQL Server와 PostgreSQL의 차이점을 자세하게 설명하는 게시물을 게시했습니다.
SQL Server와 PostgreSQL의 두 가지 중요한 차이점
첫 번째 요점 ( "CTE는 최적화 펜스")은 제공된 예에서 SQL Server가 CTE와 기본 쿼리를 함께 결합하여 단일 쿼리로 최적화한다는 점이 분명하기 때문에 내 시선을 사로 잡았습니다. PostgreSQL).
그러나이 동작은 SQL Server가 CTE를 최적화 펜스로 취급하는 다른 블로그 및 교육 클래스에서 본 예제와는 반대되는 것처럼 보입니다. 인덱스를 더 잘 사용하고 성능을 향상시킬 수 있습니다. 예를 들면 다음과 같습니다.
따라서 SQL Server는 최적화 울타리 SOMETIMES로 CTE를 "명예롭게"하는 것처럼 보입니다. SQL Server가 CTE를 최적화 차단 (또는 반대 동작)으로 신뢰할 수있는 알려진 사례의 특정 목록을 문서화 할 수있는 유용한 리소스가 있습니까?