2011-10-05 29 views
5

基本上我需要得到具有超過2次出現在StaffOnGrade CampaignTitles的列表,並列出CampaignTitle,StaffNo誰擁有級評級高於2MSSQL:另一個表中選擇具有超過2次出現的行

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 

以下兩個查詢實現的各個部分,但我需要它返回一個查詢集重sults。

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 
相關問題