2011-10-05 14 views
5

Básicamente necesito para obtener una lista de CampaignTitles que tienen más de 2 ocurrencias en StaffOnGrade y la lista de la CampaignTitle, StaffNo que tienen una calificación de grado más alto que 2MSSQL: Seleccione filas con más de 2 apariciones en otra tabla

WorksOn tabla: tabla

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 

las dos consultas alcanzar las partes individuales, pero necesito que devuelve como un conjunto de consultas de la re sults.

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

SELECT STAFFNO, GRADE 
FROM STAFFONGRADE 
WHERE GRADE > 2 

Espero que esto tenga sentido!

Respuesta

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 
Cuestiones relacionadas