2010-08-17 6 views
1

Ma requête est:Nombre de résultat uniques en T-SQL

SELECT DISTINCT IncidentStatus.IncidentStatusName, Incident.IncidentID AS Bob 
FROM   Incident 
INNER JOIN  IncidentMember 
       ON Incident.IncidentID = IncidentMember.IncidentId 
INNER JOIN  IncidentStatus 
       ON Incident.IncidentStatusID = IncidentStatus.IncidentStatusID 
WHERE  (IncidentMember.MemberId = 6) 

Et le résultat est:

IncidentStatusName Bob 
--------------------------- 
Closed    9267 
In Progress   9251 
In Progress   9289 
New     7893 
Resolved    7750 

Résultat requis est:

IncidentStatusName Bob 
--------------------------- 
Closed    1 
In Progress   2 
New     1 
Resolved    1 

Aide demandée.

+0

données doivent échantillons, les noms de tables avec des colonnes, etc. Dites-nous que vous avez trop de lignes n'est pas utile. – JonH

Répondre

4
SELECT IncidentStatus.IncidentStatusName, COUNT(Incident.IncidentID) AS Bob 
    FROM Incident 
INNER JOIN IncidentMember ON Incident.IncidentID = IncidentMember.IncidentId 
INNER JOIN IncidentStatus ON Incident.IncidentStatusID = IncidentStatus.IncidentStatusID 
WHERE (IncidentMember.MemberId = 6) 
GROUP BY IncidentStatus.IncidentStatusName 

Ou vous avez besoin peut-être COUNT(DISTINCT Incident.IncidentID) (dépend de votre structure de table)

+1

Je concède. Tu étais plus rapide. :) +1 – kbrimington

+0

Vous devez être rapide par ici ... :) –

+0

Exellent. Merci merci beaucoup!!!!! :) Vraiment apprécié!! – Absar

0

prendre votre champ PK, Incident.IncidentID, de la clause select distincte