Using Group Functions in the ORDER BY Clause in SQL Server

Q

Can Group Functions Be Used in the ORDER BY Clause in SQL Server?

✍: FYIcenter.com

A

If the query output is aggregated as groups, you can sort the groups by using group functions in the ORDER BY clause. The following statement returns the maximum "counts" in each group, determined by a unique combination of tag and year. The group output is sorted by the maximum "counts" in each group in ascending order:

SELECT tag, YEAR(created), MAX(counts) 
   FROM fyi_links GROUP BY tag, YEAR(created)
   ORDER BY MAX(counts)
GO
tag     year(created)   max(counts)
DEV     2006            120
DBA     2006            390
DEV     2004            439
SQA     2007            728
SQA     2003            828
DBA     2005            960
DBA     2007            972

 

Using SELECT Statements and GROUP BY Clauses in SQL Server

⇒⇒SQL Server Database Tutorials

2016-10-25, 605👍, 0💬