2011-10-05 10 views
5

は基本的に私はStaffOnGradeに2つの以上の出現を持ってCampaignTitlesのリストを取得し、2MSSQL:別のテーブル内の2つの以上の出現との選択行

より高い等級の格付けを持っているCampaignTitle、StaffNoをリストする必要がありますWorksOnテーブル:

CampaignTitle  | StaffNo 
-------------------|-------- 
ADVENTURE WORLD | 11 
AIR CANADA   | 11 
CARNIVAL CRUISES | 3 
CARNIVAL CRUISES | 8 
CARNIVAL CRUISES | 9 
FLIGHT CENTRE  | 7 
FLIGHT CENTRE  | 10 
HARVEYWORLD TRAVEL | 4 
LAST MINUTE  | 4 
PRINCESS CRUISES | 3 
PRINCESS CRUISES | 5 
PRINCESS CRUISES | 6 
PRINCESS CRUISES | 7 
PRINCESS CRUISES | 11 
TRAVELSCENE  | 10 
VALUETOURS AUST | 3 
VIRGIN AUSTRALIA | 10 

StaffOnGradeテーブル:

Grade | StaffNo 
------|-------- 
1  | 2 
2  | 11 
3  | 3 
3  | 6 
3  | 7 
4  | 4 
4  | 8 
4  | 10 
5  | 5 
5  | 9 

次の2つのクエリは、個々の部品を達成するため、私はそれが再の1つのクエリセットとして返さ必要悲しみ

SELECT campaigntitle, COUNT (CAMPAIGNTITLE) As [count] 
FROM WORKSON 
GROUP BY CAMPAIGNTITLE 
HAVING COUNT(CAMPAIGNTITLE) >2 

SELECT STAFFNO, GRADE 
FROM STAFFONGRADE 
WHERE GRADE > 2 

これは意味があります。

答えて

5
SELECT campaigntitle, StaffNo, COUNT (CAMPAIGNTITLE) As [count] 
    FROM WORKSON 
WHERE StaffNo IN 
     (SELECT STAFFNO 
      FROM STAFFONGRADE 
     WHERE GRADE > 2) 
GROUP BY CAMPAIGNTITLE 
HAVING COUNT(CAMPAIGNTITLE) >2 
関連する問題