From SubQuery
An aggregate requires a GROUP BY for each column in the SELECT that is not an aggregate.
Sometimes you wish to include columns in your result set that you do not wish to
group by. One way to accomplish this is by using a SubQuery in the From clause that
contains the aggregate the way you want it grouped. The outer query contains the
results of the aggregate, plus any additional columns. If you use a SubQuery in
a From clause, you must give the From clause its own alias (shown below as "sub").
In the outer query, to refer to an aliased element in the From SubQuery, use the
inline raw SQL technique to qualify the aggregate's alias with the From clause alias,
i.e., "".
C#
VB
Produces the following SQL