sqlserver查询每个作品得票率,投票比例


前言

有个投票H5项目需要在每个页面展示出每个作品数的得票率,本来打算用代码统计的,灵机一动,搜了一下,sqlserver函数就能实现,还蛮好用。


一、表结构

投票记录表

create table ufc_vote_rec(
  vote_rec_id int primary key identity(1,1),
  [user_id] int ,--用户id
  vote_id int ,
  cur_progress int default(0),--分类id
  vote_works nvarchar(200)--作品名称
)
go
二、统计sql

思路:分组查出当前分类下每个作品点赞数,count查出这个分类总的点赞数,然后将结果作为一个表(方便取值),对两个字段进行函数计算。

select vote_works,convert(decimal(10, 2),(convert(decimal(10, 2),cnt)/ convert(decimal(10, 2),sum_cnt))*100) probability from (
select vote_works,count(vote_works) cnt,(select count(1) cnt from ufc_vote_rec where cur_progress=1) sum_cnt from ufc_vote_rec where cur_progress=1 group by vote_works
) m

结果展示,小数可以自己设置

在这里插入图片描述

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值