この質問の前に Sqlite 3 Insert and Replace が複数の一意の列で失敗する
私はスキーマを持つテーブルを持っています、
CREATE TABLE tbl_poll (
id INTEGER PRIMARY KEY AUTOINCREMENT,
poll_id STRING NOT NULL,
ip_address STRING NOT NULL,
opt STRING NULL,
CONSTRAINT 'unique_vote_per_poll_per_ip_address' UNIQUE ( poll_id, ip_address ) ON CONFLICT REPLACE
);
私がする時、
select opt,count(opt) as count from tbl_poll where poll_id = 'jsfw' group by opt
結果は
opt count
0 4
2 2
3 2
つまり、4 人のユーザーが 0 のオプションを選択し、2 と 3 のオプションがそれぞれ 2 と 2 のユーザーによって選択されています。
次のような結果を得る方法はありますか
opt count percent
0 4 0.5
2 2 0.25
3 2 0.25
ここで、パーセント = カウント / 合計カウント
合計数、つまり (4+2+2 = 8 ) を取得できれば、問題も解決します。
私はこれを試しました、
select opt,count(opt) as count from tbl_poll where poll_id = 'jsfw'
しかし、どの列も同じではないため、機能しません。