Re: sql problem with join - Mailing list pgsql-sql

From Aaron Bono
Subject Re: sql problem with join
Date
Msg-id bf05e51c0611171504q2e60151o2f9a4a80081e4aff@mail.gmail.com
Whole thread Raw
In response to Re: sql problem with join  (Luca Ferrari <fluca1978@infinito.it>)
List pgsql-sql
On 11/15/06, Luca Ferrari <fluca1978@infinito.it> wrote:
On Wednesday 15 November 2006 16:20 your cat, walking on the keyboard, wrote:
> May be you could show the results you are getting and then make up some
> results that you would really like to get.  I am not entirely clear what
> you are trying to achieve.


Lastly I found the solution, for the moment, that should be the following:
select *
from peopleRole pr
left join roleSkill rs on rs.id_role = pr.id_role
left join peopleSkill ps on ps.id_skill = rs.id_skill

I think it should go, don't you think?

 
This should list out all roles and their required skills for each person.  It will show you the desired level and the evaluated level.

select
    p.*,
    r.*,
    rs.desired_level,
    coalesce(ps.evaluated_level, 0) as evaluated_level
from people p
inner join peopleRole pr on (p.id_person = pr.id_person)
inner join role r on ( pr.id_role = r.id_role)
inner join roleSkill rs on (r.id_role = rs.id_role)
inner join skill s on (rs.id_skill = s.id_skill)
left outer join peopleSkill ps on (
    p.id_person = ps.id_person
    and s.id_skill = ps.id_skill
)

You will have to check it for syntax problems since I didn't run it.

-Aaron

--
==================================================================
   Aaron Bono
   Aranya Software Technologies, Inc.
   http://www.aranya.com
   http://codeelixir.com
==================================================================

pgsql-sql by date:

Previous
From: "lms"
Date:
Subject: Re: How convert UNICODE
Next
From: "lms"
Date:
Subject: Re: How convert UNICODE