On Fri, Feb 29, 2008 at 05:28:29PM +0530, Gurjeet Singh wrote: > On Fri, Feb 29, 2008 at 3:55 PM, Martijn van Oosterhout <kleptog@xxxxxxxxx> wrote: > > Except if you have an index on the column you're ordering by. Then the > > server can really return the first row quickly. > > Quickly for sure... but I don't think 'without processing all the rows that > qualify'. Postgres will always try to do the smallest amount of work possible. Putting a LIMIT in will cause the planner to pick a plan that returns an appropriate number of rows quickly, sometimes it can be a very different plan. > I think it will still process all the rows and return just one. How do you explain that when you run: SELECT 1/v FROM (VALUES (1),(0)) c(v); Without a limit you get a "division by zero" exception, and when you have a limit of one row you get a result back. Sam ---------------------------(end of broadcast)--------------------------- TIP 1: if posting/reading through Usenet, please send an appropriate subscribe-nomail command to majordomo@xxxxxxxxxxxxxx so that your message can get through to the mailing list cleanly