From: | Oleg Lebedev <olebedev(at)waterford(dot)org> |
---|---|
To: | |
Cc: | Postgres SQL Mailing List <pgsql-sql(at)postgresql(dot)org> |
Subject: | Re: sequential joins |
Date: | 2002-03-01 23:47:15 |
Message-ID: | 3C801303.8DF6A0D1@waterford.org |
Views: | Raw Message | Whole Thread | Download mbox | Resend email |
Thread: | |
Lists: | pgsql-sql |
Ok, here it is:
SELECT *
FROM
activity a
LEFT OUTER JOIN
(SELECT username AS artistname,
objectid AS userid
FROM user) u1
ON a.artist = u1.userid;
After this join, I would have a view, that contains original activity table
data, appended with column artistname, which would contain artist username,
referenced from this activity record.
If I join the result with
(SELECT username AS programmername,
objectid AS userid
FROM user) u2
ON a.programmer = u2.userid
I would have programmername column appended, containing programmers username,
etc.
I hope this clarifies the issue.
thanks,
Josh Berkus wrote:
> Oleg,
>
> > the sub-select statement I was using were not for filtering data (in
> > which
> > case you can move filtering condition in ON part of the join), but
> > rather
> > renaming the column 'username' with the name I need in the current
> > join
> > statement. In this case, columns with new names ('artist',
> > 'designer',
> > 'programmer') would be appended to the overall query result and can
> > be
> > selected by top-level select statement.
> > This looks like a very clumsy way to do what I need.
> > Any ideas?
>
> No, now I'm confused. Can you explain better what you are trying to
> achieve as a result?
>
> -Josh
>
> ------------------------------------------------------------------------
>
> ------------------------------------------------------------------------
>
> ------------------------------------------------------------------------
From | Date | Subject | |
---|---|---|---|
Next Message | Dalton Shane | 2002-03-02 16:42:33 | arrays in stored procedures |
Previous Message | Tom Lane | 2002-03-01 23:43:16 | Re: sequential joins |