用ASP从数据库中取出符合条件的相加并求平均值。。。
我现在在做一个评分系统,数据库中有一个表用来存放评分信息(评分主题,分数,评分人。。。),我现在要用"select*from评分信息where评分主题='我要加工资'"将...
我现在在做一个评分系统,数据库中有一个表用来存放评分信息(评分主题,分数,评分人。。。),我现在要用 "select * from 评分信息 where 评分主题='我要加工资'" 将所有评分人对“我要加工资”这条主题所打的分数的平均分。。。
(平均分计算方法:去掉一个最高分和一个最低分后加起来除所有打分人数-2) 展开
(平均分计算方法:去掉一个最高分和一个最低分后加起来除所有打分人数-2) 展开
展开全部
由于不是简单的平均值,我认为要自己编写函数。
不过我有一个办法,只用select语句实现,不过效率可能不太高,在记录比较多的时候可能实用一些。
select count(评分主题) as cou from 评分信息 where 评分主题='我要加工资'
然后获取rs("cou")的值,赋给变量count
select avg(分数) as av from 评分信息 where 评分主题='我要加工资'
然后获取rs("av")的值,赋给变量avg0
select max(分数) as ma from 评分信息 where 评分主题='我要加工资'
然后获取rs("ma")的值,赋给变量max0
select min(分数) as mi from 评分信息 where 评分主题='我要加工资'
然后获取rs("mi")的值,赋给变量min0
于是分数为 (avg0*count-max0-min0)/(count-2)
不过我有一个办法,只用select语句实现,不过效率可能不太高,在记录比较多的时候可能实用一些。
select count(评分主题) as cou from 评分信息 where 评分主题='我要加工资'
然后获取rs("cou")的值,赋给变量count
select avg(分数) as av from 评分信息 where 评分主题='我要加工资'
然后获取rs("av")的值,赋给变量avg0
select max(分数) as ma from 评分信息 where 评分主题='我要加工资'
然后获取rs("ma")的值,赋给变量max0
select min(分数) as mi from 评分信息 where 评分主题='我要加工资'
然后获取rs("mi")的值,赋给变量min0
于是分数为 (avg0*count-max0-min0)/(count-2)
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询