Partager via


CORRECTIF : Des résultats incorrects peuvent se produire lorsque vous exécutez des requêtes sur des tables qui contiennent des index à l’aide d’un ordre de tri décroissant

Symptômes

Après avoir installé SQL Server mise à jour cumulative 4 (CU4) 2022, vous pouvez recevoir des résultats incorrects de requêtes qui remplissent toutes les conditions suivantes :

  1. Vous avez des index qui spécifient explicitement un ordre de tri décroissant. Voici un exemple :

    CREATE NONCLUSTERED INDEX [nci_table_column1] ON [dbo].[table1] (column1 DESC)
    
  2. Vous exécutez des requêtes sur les tables qui contiennent ces index. Ces requêtes spécifient un ordre de tri qui correspond à l’ordre de tri des index.

  3. La colonne de tri est utilisée dans les prédicats de requête dans la WHERE IN clause ou plusieurs clauses d’égalité. Voici un exemple :

    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
    

    Remarque

    La IN clause qui a une valeur unique n’a pas ce problème.

Résolution

Ce problème est résolu dans la mise à jour cumulative suivante pour SQL Server :

Mise à jour cumulative 5 pour SQL Server 2022

À propos des mises à jour cumulatives pour SQL Server

Chaque nouvelle mise à jour cumulative pour SQL Server contient tous les correctifs logiciels et correctifs de sécurité qui se trouvaient dans la build précédente. Nous vous recommandons d’installer la dernière build pour votre version de SQL Server :

Dernière mise à jour cumulative pour SQL Server 2022

Solution de contournement

Pour contourner ce problème, désinstallez SQL Server 2022 CU4 ou activez l’indicateur de trace (TF) 13166, puis exécutez DBCC FREEPROCCACHE.

État

Microsoft a confirmé l’existence de ce problème dans les produits Microsoft répertoriés dans la section « Produits concernés ».

References

Découvrez la terminologie utilisée par Microsoft pour décrire les mises à jour logicielles.