Re: [GENERAL] Simple Question, hard answer - Mailing list pgsql-general

From Jonathan A. Zdziarski
Subject Re: [GENERAL] Simple Question, hard answer
Date
Msg-id Pine.BSI.4.05L.9903181258550.8778-100000@cartman.netrail.net
Whole thread Raw
In response to Simple Question, hard answer  (Matthew <matt@ctlno.com>)
Responses Re: [GENERAL] Simple Question, hard answer
List pgsql-general
done
On Thu, 18 Mar 1999, Matthew wrote:

> Is there an easier way to do this?
>
> I have a document table, and a keyword table, there is a many to many
> relation ship between the two via a link table.  What I want to do is
> select all the documents that have two or more keywords.  That is select
> .... where keywords.keyword = 'foo1' and keywords.keyword = 'foo2';  The
> problem is that after joining the document table to the link table to
> the keywords table there is no row that satisfies the criteria.  This
> seems like something that would have to be done a lot so I'm wondering
> if there is a simple way to do it.  We have accomplished it with the
> following SQL statement
>
> select documents.docid, count(documents.docid) as docidcount,
> keywords.keyword from documents, link, keywords where (documents.docid =
> link.docid and keywords.keyid = link.keyid) and (keyword = 'foo1' or
> keyword = 'foo2' ) group by docid having docidcount > 2;
>
> Is there a more efficient way to execute this query?  Sub selects or
> something?
>
> Thanks,
>
>
>

Thank you,

Jonathan A. Zdziarski
Sr. Systems Administrator
Netrail, inc.
888.NET.RAIL x240


pgsql-general by date:

Previous
From: Matthew
Date:
Subject: Simple Question, hard answer
Next
From: "Jonathan A. Zdziarski"
Date:
Subject: Changing Field Types