2012-05-28 27 views
0

我有一個表:得到普遍的爭吵

 Subject_ID StudyPlan_ID 
     271   2 
     279   2 
     276   2 
     279   8 
     271   8 
     267   9 
     279   9 

我想用的SqlServer 2008 所以請任何幫助找到共同Subject_ID之間StudyPlan_ID所以它的279

回答

1

如果我理解正確,那麼您的意思是找到鏈接到每個StudyPlan_ID的Subject_ID。

DECLARE @Data TABLE(Subject_ID int, StudyPlan_ID int) 
INSERT INTO @Data 
    VALUES 
     (271, 2), 
     (279, 2), 
     (276, 2), 
     (279, 8), 
     (271, 8), 
     (267, 9), 
     (279, 9) 

SELECT Subject_ID 
FROM @Data AS a 
GROUP BY Subject_ID 
HAVING COUNT(Distinct StudyPlan_ID) = (SELECT COUNT(Distinct StudyPlan_ID) FROM @Data)