SELECT
--DISTINCT
organizations.Name,users.FName, users.LName, UserTypes.Name, users.Email, Users.id,
(SELECT COUNT(MessageId)) As MsgsReceived,
(SELECT COUNT(MessageID)
WHERE Messages.Urgency = 1) AS LowMsgsReceived,
(SELECT COUNT(MessageID)
WHERE Messages.Urgency = 2) AS MedMsgsReceived,
(SELECT COUNT(MessageID)
WHERE Messages.Urgency = 3) AS HighMsgsReceived
FROM Users
INNER JOIN Recipients ON
Users.ID = Recipients.UserId
INNER JOIN Messages ON
Messages.ID = Recipients.MessageID
INNER JOIN UserTypes ON
Users.UserTypeID = UserTypes.ID
INNER JOIN Organizations ON
Users.OrganizationId = Organizations.Id
GROUP BY organizations.Name,users.FName, users.LName, UserTypes.Name, users.Email, Users.id, Messages.Urgency
ORDER BY Users.FName
カウントは、受信したメッセージのレベルの間違った結果を私に与えます。以下のクエリは私に正しくカウントを与えますが、私がそれにnullを表示したくない行のいくつかは、代わりに0を表示します、何か助けはありますか?