Re: [HACKERS] correlated subquery

From: sszabo(at)bigpanda(dot)com
To: Bruce Momjian <pgman(at)candle(dot)pha(dot)pa(dot)us>
Cc: pgsql-hackers(at)postgreSQL(dot)org
Subject: Re: [HACKERS] correlated subquery
Date: 1999-12-29 23:59:18
Message-ID: 199912292359.SAA01272@homeworld.bigpanda.org
Views: Raw Message | Whole Thread | Download mbox | Resend email
Thread:
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.

Stephan Szabo

Responses

Browse pgsql-hackers by date

  From Date Subject
Next Message Bruce Momjian 1999-12-30 00:44:07 Re: [HACKERS] correlated subquery
Previous Message Jan Wieck 1999-12-29 23:52:22 Re: [HACKERS] Index corruption