私はanswers
テーブルに次のデータを持っている場合に基づいて結果をグループ化:MySQLは数えると2列
+-------------------------------------------+
| forum_id | user_id | question_id | answer |
+-------------------------------------------+
| 1 | 1 | 1 | A |
| 1 | 1 | 2 | B |
| 1 | 2 | 1 | B |
| 1 | 2 | 2 | B |
| 1 | 3 | 1 | A |
| 1 | 3 | 2 | B |
| 2 | 1 | 1 | A |
| 2 | 2 | 2 | A |
+-------------------------------------------+
がどのように私は答えの集計を選択するのでしょうか?次のような結果を再実行するには:
+------------------------------+
| question_id | answer | count |
+------------------------------+
| 1 | A | 2 |
| 1 | B | 1 |
| 2 | A | 3 |
| 2 | B | 0 |
+------------------------------+
これは私が現時点で持っているものです。私はそれがGROUP BYを使用しなければならないことを知っていますが、私は予想される結果を返すのに苦労しています。
SELECT question_id, answer, COUNT(*)
FROM answers
WHERE forum_id = 1
GROUP BY question_id, answer
あなたの疑問をお聞かせください。期待される回答とあなたの質問から得られた回答との違いを教えてください。あなたの質問は大丈夫です。 –
あなたの予想される出力が間違っていて、現在のクエリが正しいと思います。 –
@TimBiegeleisen Opは何人のユーザーが答えなかったのかを数えたいと思っています。このケースでは0 –