2013-02-23 92 views
-3

我有一个PersonId与我在People表中。从具有多个输入的表中选择不同的ID

现在我已经根据名为PositionIdPersonId的表为这些人分配了职位。 此表的结构如下: -

CorporateTeam 
PersonId PositionId 
1   1 
2   2 
2   3 

所以带PERSONID 2人有多个位置。

现在我有一个Skills另一台是基于PositionId

所以我想找回多个不同技能基于PERSONID一个特定的人。

+1

请解释一下。问题不清楚 – Saksham 2013-02-23 10:37:41

回答

0
create table Person (
    PersonId int 
) 

create table Position (
    PersionId int, 
    PositionId int 
) 

create table Skill (
    PositionId int, 
    SkillId int 
) 
GO 

insert into Person values (1), (2) 
insert into Position values (1, 1), (2, 2), (2, 3) 
insert into Skill values (2, 1), (2, 2), (3, 3) 
GO 

select distinct s.SkillId 
from Person p 
inner join Position pos on p.PersonId = pos.PersionId 
inner join Skill s on pos.PositionId = s.PositionId 
where p.PersonId = 2 
相关问题