수정: 내림차순 정렬 순서를 사용하여 인덱스가 포함된 테이블에 대해 쿼리를 실행할 때 잘못된 결과가 발생할 수 있습니다.
증상
SQL Server 2022 CU4(누적 업데이트 4)를 설치한 후 다음 조건을 모두 충족하는 쿼리에서 잘못된 결과를 받을 수 있습니다.
내림차순 정렬 순서를 명시적으로 지정하는 인덱스가 있습니다. 예를 들면 다음과 같습니다.
CREATE NONCLUSTERED INDEX [nci_table_column1] ON [dbo].[table1] (column1 DESC)
이러한 인덱스가 포함된 테이블에 대해 쿼리를 실행합니다. 이러한 쿼리는 인덱스의 정렬 순서와 일치하는 정렬 순서를 지정합니다.
정렬 열은 절 또는 여러 같음 절의
WHERE IN
쿼리 조건자에서 사용됩니다. 예를 들면 다음과 같습니다.SELECT * FROM [dbo].[table1] WHERE column1 IN (1,2) ORDER BY column1 DESC SELECT * FROM [dbo].[table1] WHERE column1 = 1 or column1 = 2 ORDER BY column1 DESC
참고 항목
IN
단일 값이 있는 절에는 이 문제가 없습니다.
해결
이 문제는 SQL Server에 대한 다음 누적 업데이트에서 해결되었습니다.
SQL Server의 누적 업데이트 정보
SQL Server에 대한 각각의 새로운 누적 업데이트에는 이전 빌드에 있던 모든 핫픽스 및 보안 수정 사항이 포함됩니다. SQL Server 버전에 대한 최신 빌드를 설치하는 것이 좋습니다.
SQL Server 2022에 대한 최신 누적 업데이트
해결 방법
이 문제를 해결하려면 SQL Server 2022 CU4를 제거하거나 TF(추적 플래그) 13166을 사용하도록 설정한 다음 실행 DBCC FREEPROCCACHE
합니다.
상태
Microsoft는 "적용 대상" 섹션에 있는 Microsoft 제품에 문제가 있다는 것을 확인했습니다.
참조
Microsoft가 소프트웨어 업데이트를 설명하는 데 사용하는 용어에 대해 알아보세요.