共用方式為


修正:當您使用遞減排序順序對包含索引的數據表執行查詢時,可能會發生不正確的結果

徵狀

安裝 SQL Server 2022 累積更新 4 (CU4) 之後,您可能會收到符合下列所有條件之查詢的不正確結果:

  1. 您有明確指定遞減排序順序的索引。 以下為範例:

    CREATE NONCLUSTERED INDEX [nci_table_column1] ON [dbo].[table1] (column1 DESC)
    
  2. 您會針對包含這些索引的數據表執行查詢。 這些查詢會指定符合索引排序順序的排序順序。

  3. 排序數據行用於 子句或多個相等子句中的 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 2022 的累積更新 5

關於 SQL Server 的累積更新

SQL Server 的每個新累積更新都包含先前組建中的所有 Hotfix 和安全性修正。 建議您為版本的 SQL Server 安裝最新的組建:

SQL Server 2022 的最新累積更新

因應措施

若要解決此問題,請卸載 SQL Server 2022 CU4 或啟用追蹤旗標 (TF) 13166,然後執行 DBCC FREEPROCCACHE

狀態

Microsoft 已確認<適用於>一節所列的 Microsoft 產品確實有上述問題。

參考

瞭解 Microsoft 用來描述軟體更新的 術語