2013-02-23 107 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 
相關問題