0
質問テーブルに3つのテーブル(ユーザ、質問、回答)があります。私はid_questionとquestionを持っています。回答テーブルにはid_question、user_idとanswerがあります。私は質問ごとの答えの数を私に与えるQueuryを実行したい。私はanswerd(id_questionではない)と3つの他の列(yes、no、maybe)を持つ列が、その答えが質問に与えられた回数を持つ列が必要です。質問欄には繰り返し質問をすることはできません(ユーザーは同じ質問に回答して別の回答を与えることができますが、回答する回数は欲しい、それぞれの質問には答えてもらえません)。私はこれまで何をしたかHERESに他の2phpmyadminのカウントステートメント
を作成:
SELECT questions.question,COUNT(answers.answer) As Yes
FROM answers
INNER JOIN questions ON questions.id_question=answers.id_question
WHERE answer='yes' GROUP BY question
ORDER BY questions.id_question ASC
うわー!出来た。あなたは私に、SUM IFの仕事がどのようにあるのかを説明できますか? –
「IF」文は、 'answer = 'yes''が真であれば「1」を、偽なら「0」を返します。次に、「IF」文の結果を「SUM」して、基本的な計算:「1 + 0 + 1 + 1」になります。より良い理解のために、 'GROUP BY'と' SUM'関数なしで同じクエリを実行しようとすると、集計の前にあなたのデータがどのように見えるでしょう。 – icoder