2013-07-03 41 views
0

如果計數爲0,如何返回0作爲與PossibleAnswerText響應?現在它不會返回任何東西。返回0與SQL查詢而不是什麼

select 
    COUNT(sr.Id) AS 'Responses', qpa.PossibleAnswerText 
from 
    CaresPlusParticipantSurvey.QuestionPossibleAnswer as qpa 
join 
    CaresPlusParticipantSurvey.SurveyResponse as sr on sr.QuestionPossibleAnswerId = qpa.Id 
where 
    sr.QuestionPossibleAnswerId = 116 
GROUP BY 
    qpa.PossibleAnswerText 
+1

如果它什麼都沒有返回,那麼sr.QuestionPossibleAnswerID = 116 –

+0

沒有記錄使用left join ?. –

+0

左連接沒有工作,已經試過了。我知道沒有記錄,這就是爲什麼我想顯示0. – user1202606

回答

1

你需要使用LEFT JOIN,並刪除從WHERE子句中的「最右」表中的條件;

SELECT COUNT(sr.Id) AS 'Responses', qpa.PossibleAnswerText 
FROM CaresPlusParticipantSurvey.QuestionPossibleAnswer AS qpa 
LEFT JOIN CaresPlusParticipantSurvey.SurveyResponse as sr 
    ON sr.QuestionPossibleAnswerId = qpa.Id 
WHERE qpa.Id = 116 
GROUP BY qpa.PossibleAnswerText 
+0

我只想要一個結果,計數和文本。該查詢帶回多行 – user1202606

+0

@ user1202606編輯答案。 –

+0

工作,更改where子句中的表。謝謝 – user1202606

相關問題