2013-03-13 116 views
1

我有這個問題 我必須找到所有的記錄有相同的ProductID查找相同的記錄每個ID

例如

http://www.sqlfiddle.com/#!2/021cd/5

的結果是錯誤的
我需要得到所有PHID那擁有所有產品

phID 1002沒有產品ID 8,9和14所以不能在那裏

如果我輸入(8,9,12,14,25),結果必須是1001,1004,因爲1001有(8,9,12,14,25)和1004相同的 但是如果我輸入(12,25 ,49)結果必須是1001,1002,1004,因爲全部都有(12,25,49)

有幫助嗎? :)

回答

2

您的查詢獲得具有任意列出的產品,而不是全部其中的phID。試試這些:

SELECT phID, count(*) c 
FROM Tablename 
WHERE ProductID in (8,9,12,14,25) 
GROUP BY phID 
HAVING c = 5; 

SELECT phID, count(*) c 
FROM Tablename 
WHERE ProductID in (12,25,49) 
GROUP BY phID 
HAVING c = 3; 
相關問題