Re: SELECT LIMIT 1 VIEW Performance Issue - Mailing list pgsql-performance

From Kevin Grittner
Subject Re: SELECT LIMIT 1 VIEW Performance Issue
Date
Msg-id s332af83.045@gwmta.wicourts.gov
Whole thread Raw
In response to SELECT LIMIT 1 VIEW Performance Issue  (K C Lau <kclau60@netvigator.com>)
List pgsql-performance
Have you tried the "best choice" pattern -- where you select the set of
candidate rows and then exclude those for which a better choice
exists within the set?  I often get better results with this pattern than
with the alternatives.  Transmuting your query to use this patter gives:

select PlayerID,AtDate from Player a where PlayerID='22220'
  and not exists
    (select * from Player b
      where b.PlayerID = a.PlayerID and b.AtDate > a.AtDate);

>>> K C Lau <kclau60@netvigator.com> 09/21/05 11:21 PM >>>

select PlayerID,AtDate from Player a
  where PlayerID='22220' and AtDate = (select b.AtDate from Player b
  where b.PlayerID = a.PlayerID order by b.PlayerID desc, b.AtDate desc
LIMIT 1);


pgsql-performance by date:

Previous
From: "Merlin Moncure"
Date:
Subject: Re: SELECT LIMIT 1 VIEW Performance Issue
Next
From: "Gurpreet Aulakh"
Date:
Subject: Re: Query slower on 8.0.3 (Windows) vs 7.3 (cygwin)