適切なmysqlクエリを作成するのに苦労しています。表は次のとおりです。
**survey_result**
question_id
header_id
answer
答えが(0,1,2,3,4,5)の範囲のintである場合。特定のIDに対して、特定の回答が発生した回数をカウントするクエリを作成したいと思います。したがって、question_id = 1の場合、次のように表示します。
question_id answer occurence_number
1 0 12
1 1 20
1 2 34
1 3 5
1 4 9
1 5 15
そして、おそらく私は、発生回数が最も多いか、最も少ない答えを選びたいと思います。しかし、それは2番目の部分であり、私は最初の部分で苦労しています。
私がなんとかそれを終えることができた最初の声明の大きな助けで、これはどのように機能するバージョンが見えるかです:
select question_id, max(occurence_number) FROM
(select question_id, answer, count(*) as occurence_number
from survey_result
group by question_id, answer
order by question_id asc, occurence_number desc) as results
GROUP BY question_id