FIX: Query that you run against a partitioned table returns incorrect results in SQL Server 2008, SQL Server 2008 R2 or SQL Server 2012

Á við um: SQL Server 2008 Service Pack 3SQL Server 2008 DeveloperSQL Server 2008 Enterprise


Consider the following scenario:
  • You have a partitioned table in Microsoft SQL Server 2008, SQL Server 2008 R2, or Microsoft SQL Server 2012..
  • The table has a non-unique, nonclustered index in a descending order.
  • You run a query against the table. The query spans multiple partitions and requests an order.
In this scenario, the query returns incorrect results.


This issue occurs because SQL Server reverses partition ID ranges when a descending index is queried. Therefore, the correct order across the partitions is violated.


The issue was first fixed in the following cumulative update of SQL Server. After you apply the fix, you have to enable trace flag 4199 to make the hotfix work.

Cumulative Update 8 for SQL Server 2012 SP1

Cumulative Update 11 for SQL Server 2012

Cumulative Update 10 for SQL Server 2008 R2 SP2

Cumulative Update 14 for SQL Server 2008 SP3


Microsoft has confirmed that this is a problem in the Microsoft products that are listed in the "Applies to" section.