2012-06-08 4 views
1

다음 mysql 문에서 고유 한 질문 수를 얻으려고 시도하지만 questionCount로 count (q.id)를 추가 할 때마다 명령문은 결과 하나만 반환합니다. 나는 분명히 잘못된 것을하고 있지만 그것이 무엇인지 알 수는 없다. 누군가가 도움을 줄 수복잡한 mysql 문에서 카운트 받기

http://www.sqlfiddle.com/#!2/34906/58

희망.

스티브

+0

결과가 한 행으로 표시됩니까? 또는 반환 된 행의 값이 1입니까? –

+0

나는 당신의 문제를 시험해보고 20 –

답변

1

그냥이 하나에 쿼리의 2 줄을 편집

select 
    count(distinct FinalQA.QUESTION_ID) from..... 
+0

의 결과를 얻을 수 있습니까? 단 5 개의 고유 한 질문 만 있기 때문에 20이 잘못되었습니다. 각각 4 번 나타납니다 따라서 20. – SteveF

+0

실례합니다. 내 새로운 대답은 당신의 해결책입니다. 이거 아니야? –

+0

안녕하세요 - 아니 그것은 여전히 ​​계산을 추가하지 않고 4 답변으로 각각 5 질문 대신 하나의 대답으로 단 하나의 질문을 반환이야. 또한 question_id 두 번째 줄에 존재하지 않으므로 '알 수없는 열'오류를 반환합니다 – SteveF

0

을 당신이 모든 행의 총 질문에 "스탬프"를 원하는 나타납니다 ... 예를 들어 당신이 자동 생성됩니다 테스트에서 출력에 "Out of 5 questions"를 표시하려고합니다. 이것을 간소화하기 위해 WHERE 절을 통해 5 개의 질문을 원한다고 생각하기 때문에 약간 조정할 것입니다 ...

select 
     FinalQA.* 
    from 
     (select 
       5 as TotalQuestionsOffered, 
       QWithAllAnswers.*, 
       ... rest of query) FinalQA 
    where 
     FinalQA.ARankSeq <= FinalQA.TotalQuestionsOffered 
+0

응답 해 주셔서 감사합니다. 문제는 내가 5 개 질문을하는 동안 항상 5 개 질문이 아니기 때문에 내가 발견 한 정확한 질문의 수를 알고 싶다는 것입니다. – SteveF