アンケートの項目と回答の照会

Discourse Surveys プラグインを使用しています: GitHub - discourse/discourse-surveys

アンケートを送信すると、ラジオボタン、チェックボックス、ドロップダウンがデータベースに NULL として登録されているようです。また、1 つの回答が 2 回登録されているようです。

「いいね!」 2

の値は別のテーブルに保存されます。

これで目的を達成できるはずです :slight_smile:

-- [params]
-- null int :user_id
-- string :name

SELECT s.name, s.post_id, sf.question, COALESCE(sr.value, sfo.html) AS value, sr.user_id, sr.created_at as responded_at
FROM surveys s
JOIN survey_fields sf ON sf.survey_id = s.id
JOIN survey_responses sr ON sr.survey_field_id = sf.id
LEFT JOIN survey_field_options sfo ON sfo.id = sr.survey_field_option_id
WHERE s.name = :name
AND (:user_id IS NULL OR sr.user_id = :user_id)
ORDER BY sr.user_id

ユーザーごとのクエリオプションを追加しました(空の場合は、すべてのユーザーをサーベイごとにクエリします)。ただし、必要なければ以下を削除しても構いません。

AND (:user_id IS NULL OR sr.user_id = :user_id)

「いいね!」 3

ああ、その追加の表に気づきませんでした!ありがとうございます!

「いいね!」 4

This topic was automatically closed 30 days after the last reply. New replies are no longer allowed.