私はテーブルを持っています
ANSWERS
qId
toggle_value
HTMLラジオボタンの値を記録します{Yes, N/A, No, Resolved}
ここで、質問IDごとにグループ化された、はい、いいえ、nas、および解決済みの数を数えて要約します。
簡単にするために、個々のクエリの作成を開始しました。
SELECT qId, count(*) as yes_qty FROM ANSWERS WHERE TOGGLE_VALUE='Yes' GROUP BY qId;
SELECT qId, count(*) as na_qty FROM ANSWERS WHERE TOGGLE_VALUE='NA' GROUP BY qId;
SELECT qId, count(*) as no_qty FROM ANSWERS WHERE TOGGLE_VALUE='No' GROUP BY qId;
SELECT qId, count(*) as resolved_qty FROM ANSWERS WHERE TOGGLE_VALUE='Resolved' GROUP BY qId;
しかし、私は本当にそれを1つのクエリに入れたいので、リストを繰り返して次のようなものを表示できます(3つの質問で14のチェックリストを集約)
Q Yes No NA Resolved
1 4 10 0 10
2 14 0 0 0
3 7 0 7 0
私は実際にはトグル値に文字列を使用していませんが、数値1 =はい、2 = NAなどです...そして、より良いテーブルデザインがあったかどうか疑問に思いました
ANSWERS
qId
yes_value
no_value
na_value
resolved_value
テーブルdeisgnを変更した場合、他の多くのことをリファクタリングする必要があるため、単一のクエリが機能することを望んでいました。