在这个问题之前 Sqlite 3 Insert and Replace 在超过 1 个唯一列上失败
我有一个带有架构的表,
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'
但它不起作用,因为没有列不一样。