私は次のコードを持っています:
SELECT q1, COUNT(q1) as Responses,
(SELECT COUNT(q1) FROM `acme` WHERE q1 >= 1) AS Total,
(COUNT(q1) / (SELECT COUNT(q1) FROM `acme` WHERE q1 >= 1 )) *100 AS Percentage
FROM `acme` WHERE q1 >= 1 GROUP BY q1 DESC
q1
非常に単純です。フィールドには4つの応答しかありません。1、2、3、または4です。
以下の出力を参照してください。
q1 Responses Total percentage
4 109 362 30.1105
3 224 362 61.8785
2 25 362 6.9061
1 4 362 1.1050
これで、オプション1、2、3、または4が含まれq1
ている場合は問題なく4's
機能しますが、Q1にオプションがない場合、コードは4ではなく3、2、1の行を返します(これはおそらく実際に正しい)。
だから、4がなかったら、このようなものを作るためにそれが必要です...
q1 Responses Total percentage
4 0 253 0
3 224 253 88.53754
2 25 253 9.88142
1 4 253 1.58102
それが理にかなっていることを願っています。