Ich habe die folgende Abfrage, die Testfragen, mögliche Antworten auf diese Fragen und die Anzahl der Male jede mögliche Antwort durch den Benutzer ausgewählt wurde zurückgibt:Hinzufügen einer Zählung zu einer komplexen SQL-Abfrage
SELECT p.program_id,
p.pre_survey_form_id,
p.post_survey_form_id,
fq.form_id,
sq.question_id,
sq.question_text,
qo.question_option_id,
qo.option_text,
G.Total
FROM dbo.program p
LEFT OUTER JOIN dbo.form_question fq
ON p.pre_survey_form_id = fq.form_id OR p.post_survey_form_id = fq.form_id
LEFT OUTER JOIN dbo.survey_question sq
ON fq.question_id = sq.question_id
LEFT OUTER JOIN dbo.question_option qo
ON sq.question_id = qo.question_id
LEFT OUTER JOIN (
SELECT ra.question_id, ra.question_option_id, COUNT(*) AS Total
FROM dbo.form_response_answers ra
GROUP BY ra.question_option_id, ra.question_id
) G
ON G.question_id = sq.question_id AND G.question_option_id = qo.question_option_id
ORDER BY p.program_id, fq.form_id, sq.question_id, qo.question_option_id
Das einzige, was Ich muss die Anzahl der Antworten auf jede Frage zusammenfassen, aber ich stolpere wirklich damit. Ich zähle die Anzahl der Antworten und erhalte den Prozentsatz der Zeiten, zu denen eine bestimmte Antwort vom Benutzer gewählt wurde.
Ergebnis Satz:
---- ---- ---- -- --------------------------------------------------------------------------- - ------------ ----
1000 1001 1000 10 How many days a week do you drink at least eight glasses (64 oz.) of water? 1 Never 1
1000 1001 1000 10 How many days a week do you drink at least eight glasses (64 oz.) of water? 2 Once 1
1000 1001 1000 10 How many days a week do you drink at least eight glasses (64 oz.) of water? 3 Two times NULL
1000 1001 1000 10 How many days a week do you drink at least eight glasses (64 oz.) of water? 4 Three times 2
1000 1001 1000 10 How many days a week do you drink at least eight glasses (64 oz.) of water? 5 Four times NULL
1000 1001 1000 10 How many days a week do you drink at least eight glasses (64 oz.) of water? 6 Five or more NULL
Das sieht aus wie es sollte funktionieren ... welche Art von Ergebnissen erhalten Sie? –
Ja, die Ergebnisse sehen gut aus. Ich habe nur Schwierigkeiten, eine Zählung hinzuzufügen, die die Gesamtzahl der Antworten auf eine Frage zählt. Es zählt bereits, wie oft eine bestimmte Antwort gewählt wurde. Ich muss zählen, wie oft jede Frage beantwortet wurde. Also muss ich im Grunde die Anzahl der Antworten auf jede Frage zusammenfassen. – Darren
Ich habe das Ergebnis für eine Frage in meinem ursprünglichen Beitrag hinzugefügt, um besser zu veranschaulichen, was ich versuche zu tun. Ich muss die Werte in der letzten Spalte SUMMEN, aber nur für diese bestimmte Frage. Natürlich wird es im endgültigen Ergebnis viele Fragen geben. – Darren