pg.ddx.io  pgsql-sql@postgresql.org mailing list archive  
help / color / mirror / Atom feed
From: Gary Stainburn <gary.stainburn@ringways.co.uk>
To: pgsql-sql@postgresql.org
Subject: master-detail relationship and count
Date: Fri, 29 Nov 2002 10:06:06 +0000
Message-ID: <200211291006.06749.gary.stainburn@ringways.co.uk> (raw)

Hi folks.

I've got a master detail relationship where I have a railway route table 
listing landmarks along the route,  and a Links table listing URL's 
associated with that landmark. Listed below:

How can I do a query showing the landmark ID, the landmark name, and a count 
of links associated with that  landmark.  Below is a SQL statement that 
although is illegal, gives a good idea of what I'm looking for.

select r.rtid, r.rtname, l.count(*) from route r, links l where l.lktype = 'R' 
and l.lklid = r.rtid;

nymr=# \d route
                                     Table "route"
 Attribute  |         Type          |                     Modifier
------------+-----------------------+--------------------------------------------------
 rtid       | integer               | not null default 
nextval('route_rtid_seq'::text)
 rtmile     | integer               | not null
 rtyards    | integer               | not null
 rtname     | character varying(40) |
 rtspeed    | integer               |
 rtgradient | integer               |
 rtsection  | integer               |
 rtphone    | character(1)          |
 rtcomments | text                  |
Indices: route_index,
         route_rtid_key

nymr=# select r.rtid, l.count(*) from route r, links l where
nymr=# \d links
                                    Table "links"
 Attribute |         Type          |                    Modifier
-----------+-----------------------+-------------------------------------------------
 lkid      | integer               | not null default 
nextval('staff_sid_seq'::text)
 lkdesc    | character varying(40) |
 lkurl     | character varying(40) |
 lktype    | character(1)          |
 lklid     | integer               |
Index: links_lkid_key

lktype indicates the link type - 'R' indicates a route entry
lklid indicates the link ID. For a 'R' it is the rtid of the route entry
-- 
Gary Stainburn
 
This email does not contain private or confidential material as it
may be snooped on by interested government parties for unknown
and undisclosed purposes - Regulation of Investigatory Powers Act, 2000     




view thread (8+ messages)  latest in thread

Message-ID: <200211291006.06749.gary.stainburn@ringways.co.uk>
Permalink:  ../200211291006.06749.gary.stainburn@ringways.co.uk/
Also on:    postgresql.org/message-id/200211291006.06749.gary.stainburn@ringways.co.uk

 · 

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: gary.stainburn@ringways.co.uk
  Subject: Re: master-detail relationship and count
  In-Reply-To: <200211291006.06749.gary.stainburn@ringways.co.uk>

* 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