Skip to main content
Removed unnecessary opinion piece
Source Link
Paul White
  • 90.3k
  • 30
  • 423
  • 663

Answering this as an element of the error message. As @MartinSmith said above,

The order by clause for aggregates wasn't implemented until SQL Server 2012. Not sure what the PDW extensions are. – Martin Smith

This is mentioned officially here SQL Server 2008 R2 - OVER Clause (Transact-SQL)

When used in the context of a ranking window function, can only refer to columns made available by the FROM clause. An integer cannot be specified to represent the position of the name or alias of a column in the select list. cannot be used with aggregate window functions.

Even more significant is the verbiage in SQL Server 2012 - OVER Clause (Transact-SQL)

Depending on the ranking, aggregate, or analytic function used with the OVER clause, and/or the may not be supported.

So, it looks like it certainly is not available in 2008 -- though that error message is a really obscure way of saying "not implemented", and in 2012 it looks like MicrosoftsMicrosoft's official stance is your mileage may vary. Which is about the way I feel with all of their products, so I guess it only suitable that they come out and say it.

Answering this as an element of the error message. As @MartinSmith said above,

The order by clause for aggregates wasn't implemented until SQL Server 2012. Not sure what the PDW extensions are. – Martin Smith

This is mentioned officially here SQL Server 2008 R2 - OVER Clause (Transact-SQL)

When used in the context of a ranking window function, can only refer to columns made available by the FROM clause. An integer cannot be specified to represent the position of the name or alias of a column in the select list. cannot be used with aggregate window functions.

Even more significant is the verbiage in SQL Server 2012 - OVER Clause (Transact-SQL)

Depending on the ranking, aggregate, or analytic function used with the OVER clause, and/or the may not be supported.

So, it looks like it certainly is not available in 2008 -- though that error message is a really obscure way of saying "not implemented", and in 2012 it looks like Microsofts official stance is your mileage may vary. Which is about the way I feel with all of their products, so I guess it only suitable that they come out and say it.

Answering this as an element of the error message. As @MartinSmith said above,

The order by clause for aggregates wasn't implemented until SQL Server 2012. Not sure what the PDW extensions are. – Martin Smith

This is mentioned officially here SQL Server 2008 R2 - OVER Clause (Transact-SQL)

When used in the context of a ranking window function, can only refer to columns made available by the FROM clause. An integer cannot be specified to represent the position of the name or alias of a column in the select list. cannot be used with aggregate window functions.

Even more significant is the verbiage in SQL Server 2012 - OVER Clause (Transact-SQL)

Depending on the ranking, aggregate, or analytic function used with the OVER clause, and/or the may not be supported.

So, it looks like it certainly is not available in 2008 -- though that error message is a really obscure way of saying "not implemented", and in 2012 it looks like Microsoft's official stance is your mileage may vary.

Source Link
Evan Carroll
  • 64.7k
  • 49
  • 251
  • 496

Answering this as an element of the error message. As @MartinSmith said above,

The order by clause for aggregates wasn't implemented until SQL Server 2012. Not sure what the PDW extensions are. – Martin Smith

This is mentioned officially here SQL Server 2008 R2 - OVER Clause (Transact-SQL)

When used in the context of a ranking window function, can only refer to columns made available by the FROM clause. An integer cannot be specified to represent the position of the name or alias of a column in the select list. cannot be used with aggregate window functions.

Even more significant is the verbiage in SQL Server 2012 - OVER Clause (Transact-SQL)

Depending on the ranking, aggregate, or analytic function used with the OVER clause, and/or the may not be supported.

So, it looks like it certainly is not available in 2008 -- though that error message is a really obscure way of saying "not implemented", and in 2012 it looks like Microsofts official stance is your mileage may vary. Which is about the way I feel with all of their products, so I guess it only suitable that they come out and say it.