Re: [HACKERS] correlated subquery
Bruce Momjian <pgman@candle.pha.pa.us>
From: Bruce Momjian <pgman@candle.pha.pa.us>
To: sszabo@bigpanda.com
Cc: pgsql-hackers@postgreSQL.org
Date: 1999-12-30T00:44:07Z
Lists: pgsql-hackers
> > >Is this a good example of a required correlated subquery: > > > > SELECT f1.firstname, f1.lastname, f1.age > > FROM friends f1 > > WHERE age = ( > > SELECT MAX(age) > > FROM friends f2 > > WHERE f1.state = f2.state > > ) > > ORDER BY firstname, lastname > > > >It finds the oldest person in each state. HAVING can't do that, right? > > I'm assuming that this is for the book... If so, you might want to also > note that this query can return more people than there are states if > multiple people in the same state have the maximum age for that state. > > I'm not sure how deeply you are going into this, but getting only one > person per state looks like it might be fairly painful... You might be > able cheat if there was only one field besides age and state in the output > using group by and an aggregate. Yikes, that would be painful. Good point. Fortunately, the data has only one max person per state. -- Bruce Momjian | http://www.op.net/~candle maillist@candle.pha.pa.us | (610) 853-3000 + If your life is a hard drive, | 830 Blythe Avenue + Christ can be your backup. | Drexel Hill, Pennsylvania 19026