Q

GROUP BY comment from a reader

Related to your answer "Columns in the SELECT not in the GROUP BY," I'd just like to add a comment.

Related to your answer Columns in the SELECT not in the GROUP BY, I'd just like to add a comment.

We love feedback like this. Below is the comment submitted by Oracle developer Iudith Mentzel. Many thanks for the contribution.


If working with an Oracle database, then there exist several solutions using analytic functions, like this:

select foo,
       other1,
       other2
from (select qux.*,
             sum(bar)     over (partition by foo)                as sumbar,
             row_number() over (partition by foo order by rowid) as rno
      from qux
     )
where rno = 1

or

select foo,
       sum(bar) as sumbar,
       min(other1) KEEP (dense_rank first order by rowid) as other1,
       min(other2) KEEP (dense_rank first order by rowid) as other2
from qux
group
     by foo

I think the first one works for Oracle8i or higher, the second one for Oracle9iR2 or higher.

This was last published in May 2007

Dig Deeper on Oracle and SQL

PRO+

Content

Find more PRO+ content and other member only offers, here.

Have a question for an expert?

Please add a title for your question

Get answers from a TechTarget expert on whatever's puzzling you.

You will be able to add details on the next page.

Start the conversation

Send me notifications when other members comment.

By submitting you agree to receive email from TechTarget and its partners. If you reside outside of the United States, you consent to having your personal data transferred to and processed in the United States. Privacy

Please create a username to comment.

-ADS BY GOOGLE

SearchDataManagement

SearchBusinessAnalytics

SearchSAP

SearchSQLServer

TheServerSide

SearchDataCenter

SearchContentManagement

SearchFinancialApplications

Close