수정: 내림차순 정렬 순서를 사용하여 인덱스가 포함된 테이블에 대해 쿼리를 실행할 때 잘못된 결과가 발생할 수 있습니다.
증상
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에서 소프트웨어 업데이트를 설명하는 데 사용하는 용어 에 대해 알아봅니다.