| From: | Bill Cunningham <billc(at)ballydev(dot)com> |
|---|---|
| To: | andrew_perrin(at)unc(dot)edu, pgsql-sql(at)postgresql(dot)org |
| Subject: | Re: Telling how many records are joined |
| Date: | 2002-01-04 19:20:30 |
| Message-ID: | 3C36007E.7060705@ballydev.com |
| Views: | Whole Thread | Raw Message | Download mbox | Resend email |
| Thread: | |
| Lists: | pgsql-sql |
It sounds like you want unique papercode items right?
Thats what distinct keyword is for:
SELECT distinct papercode, count(papercode) FROM papers, letters
WHERE papers.paperid=letters.paperid AND
letters.letterid IN (SELECT DISTINCT o_letterid FROM pattern_occurrences)
GROUP BY papercode;
Also a another trick you can include just those having a count of more
than one:
SELECT distinct papercode, count(papercode) FROM papers, letters
WHERE papers.paperid=letters.paperid AND
letters.letterid IN (SELECT DISTINCT o_letterid FROM pattern_occurrences)
GROUP BY papercode HAVING count(papercode) > 0;
- Bill
Andrew Perrin wrote:
>Greetings-
>
>I'm sure there's a (moderately) simple answer to this, but I'd love some
>help with it.
>
>I have a database with four tables:
>
>papers - information about newspapers, including a unique paperid
>letters - information and text of letters to the editors, including
> a unique paperid and the paperid in which it appeared
>patterns- word patterns occurring in one or more letters, including
> a unique patternid
>pattern_occurrences - a linking table containing a letterid, a patternid,
> and a count (the number of times the pattern occurs
> in the letter).
>
>The patterns and pattern_occurrences tables are quite large (around 3
>million records each).
>
>I'd like to know, for example, how many letters from each paper have one
>or more patterns already coded. The best I can do is:
>
>
>
>Thanks for any advice.
>
>----------------------------------------------------------------------
>Andrew J Perrin - andrew_perrin(at)unc(dot)edu - http://www.unc.edu/~aperrin
> Assistant Professor of Sociology, U of North Carolina, Chapel Hill
> 269 Hamilton Hall, CB#3210, Chapel Hill, NC 27599-3210 USA
>
>
>
>---------------------------(end of broadcast)---------------------------
>TIP 3: if posting/reading through Usenet, please send an appropriate
>subscribe-nomail command to majordomo(at)postgresql(dot)org so that your
>message can get through to the mailing list cleanly
>
| From | Date | Subject | |
|---|---|---|---|
| Next Message | ThomasR | 2002-01-04 19:52:54 | Re: change null to 0 in SQL script |
| Previous Message | Frank Bax | 2002-01-04 17:10:00 | simple? join |