求一个合格率的SQL在线等 需求是数据库里面有个字段是A01, 值为0 (未经历) 1(合格) 2(不合格) 时间字段为“AIRDATE”如果值为0 不参与评比。。我需要求某段时间内 A01字段得合格率。 在线等大侠。。 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 select COUNT(DECODE(A01,1,1,0))/COUNT(1)*100 合格率 FROM 表 where a01 !=0 需求是数据库里面有个字段是A01, 值为0 (未经历) 1(合格) 2(不合格) 时间字段为“AIRDATE” 如果值为0 不参与评比。。我需要求某段时间内 A01字段得合格率。 在线等大侠。。 例如:A01 AIRDATE0 2009.11 2009.21 2009.32 2009.42 2009.50 2009.6 有这样的数据。 肉眼观察后得出结论在2009年本年 合格率为 2除以6 33.333333333333333%如果数据很多不建议用肉眼观察,可以用sqlaaa 是你表的名字 select count(1) tt1 from aaa 查询总数 select count(1) tt2 from aaa where a=1 查询合格的数 select ab.tt2/ac.tt1*100% from (select count(1) tt1 from aaa where AIRDATE 时间条件 ) ab, (select count(1) tt2 from aaa where a=1 and AIRDATE 时间条件) ac的出的就是率!!!! select sum(decode(a,1,1,0))/COUNT(1) from aaa 这样可以 select sum(decode(a,1,1,0))/COUNT(1) from aaa where a01 !=0 select SUM(DECODE(A01,1,1,0))/COUNT(1)*100 合格率 FROM 表 where a01 !=0 select sum((select count(1) from aaa where a101=1)/(select count(1) from aaa where a101<>0)) from dual这个绝对可以 Oracle数据表的字段前加#是什么意思? 请教高手 索引为什么能提高查询速度?原理是什么 求救,所有table、column的备注在服务器重启后都变成了?号?? oracle中怎么查询表的字段 关于自动编号的问题 ora-12514问题:用ADO连接ORACLE,无法连通,提示SERVICE_NAME不对 一个统计报表的写法,请大家指教 请教如何得到数据表结构的sql语句。 更新大数据字段 求一个sql语句 oracle查询时将多条记录合并成一条,急!!!
如果值为0 不参与评比。。我需要求某段时间内 A01字段得合格率。 在线等大侠。。
例如:
A01 AIRDATE
0 2009.1
1 2009.2
1 2009.3
2 2009.4
2 2009.5
0 2009.6 有这样的数据。 肉眼观察后得出结论在2009年本年 合格率为 2除以6 33.333333333333333%如果数据很多不建议用肉眼观察,可以用sql
aaa 是你表的名字 select count(1) tt1 from aaa 查询总数 select count(1) tt2 from aaa where a=1 查询合格的数
select ab.tt2/ac.tt1*100% from (select count(1) tt1 from aaa where AIRDATE 时间条件 ) ab,
(select count(1) tt2 from aaa where a=1 and AIRDATE 时间条件) ac的出的就是率!!!!
这样可以