質問投稿機能を作成している者です。
環境はMySQLを使っており、以下のような構成のテーブルがあります。
MySQL
1select * from questions;
questionID | |
---|---|
1 | |
2 | |
3 |
MySQL
1select * from answerTable;
answerID | questionID |
---|---|
1 | 1 |
2 | 2 |
3 | 2 |
4 | 3 |
5 | 3 |
6 | 3 |
MySQL
1select * from questionReaction
reactionID | questionID | reaction |
---|---|---|
1 | 1 | 0 |
2 | 1 | 1 |
3 | 2 | 0 |
4 | 2 | 0 |
5 | 2 | 1 |
6 | 3 | 1 |
7 | 3 | 1 |
8 | 3 | 0 |
ここで
MySQL
1select questionID , sum(reaction=0) as goodCount , sum(reaction=1) as badCount 2 from questionReaction group by questionID ;
とすると
questionID | goodCount | badCount |
---|---|---|
1 | 1 | 1 |
2 | 2 | 1 |
3 | 1 | 2 |
が得られました(この結果をAとします)。さらに
MySQL
1select questionID, count(questionID) as answerValue from answerTable group by questionID;
とすると
questionID | answerValue |
---|---|
1 | 1 |
2 | 2 |
3 | 3 |
が得られました(この結果をBとします)。ここでやりたいことが、AとBを結合し、
questionID | answerValue | goodCount | badCount |
---|---|---|---|
1 | 1 | 1 | 1 |
2 | 2 | 2 | 1 |
3 | 3 | 1 | 2 |
と表示したいです。大変長くなってしまい申し訳ありません。よろしくお願いいたします。
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。