pg.ddx.io  pgsql-sql@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Dan Langille <dan@langille.org>
To: Tom Lane <tgl@sss.pgh.pa.us>
Cc: pgsql-sql@postgresql.org
Subject: Re: using LIMIT only on primary table
Date: Sat, 2 Mar 2002 18:40:19 -0500
Message-ID: <200203022340.g22NeNk56386@lists.unixathome.org> (raw)
In-Reply-To: <17340.1015111355@sss.pgh.pa.us>
References: <200203022235.g22MZYk55756@lists.unixathome.org>

On 2 Mar 2002 at 18:22, Tom Lane wrote:

> "Dan Langille" <dan@langille.org> writes:
> > If I want all the items on the last 100 orders, I'd start like this:
> 
> > SELECT * 
> > from orders, order_items 
> > where order_items.order_id = orders.id
> > LIMIT 100
> 
> I think you want
> 
> SELECT * 
> from
>   (SELECT * from orders order by ID DESC limit 100) as recent_orders,
>   order_items 
> where order_items.order_id = recent_orders.id

That is it Tom.  Thank you.  As soon as I saw your solution, I thought of 
creating a view to do this.

   CREATE VIEW recent orders AS 
   SELECT * from orders 
   order by ID DESC 
   limit 100;

Which makes the query:

   SELECT * 
   from recent_orders, order_items 
   where order_items.order_id = recent_orders.id

Cheers
-- 
Dan Langille
The FreeBSD Diary - http://freebsddiary.org/ - practical examples




view thread (7+ messages)  latest in thread

Message-ID: <200203022340.g22NeNk56386@lists.unixathome.org>
Permalink:  ../200203022340.g22NeNk56386@lists.unixathome.org/
Also on:    postgresql.org/message-id/200203022340.g22NeNk56386@lists.unixathome.org

 · 

reply

Reply instructions:

You may reply publicly to this message via plain-text email
using any one of the following methods:

* Reply to all the recipients using the --to and --cc options:
  reply via email

  To: pgsql-sql@postgresql.org
  Cc: dan@langille.org, tgl@sss.pgh.pa.us
  Subject: Re: using LIMIT only on primary table
  In-Reply-To: <200203022340.g22NeNk56386@lists.unixathome.org>

* Save the following mbox file, import it into your mail client,
  and reply-to-all from there: mbox

This inbox is served by DDX for PostgreSQL; see mirroring instructions
for how to clone and mirror all data and code used for this inbox