SQL语句统计错误率
2018年的第一篇博客就以此作为开端吧 :D
最近在项目中碰到需要统计类似错误率之类的需求,原本这功能是之前做的,但是最近测的时候发现出了点问题,显示的结果不对。这就比较尴尬了。。。
于是就进行debug,发现之前写的查询SQL有问题,“不通用”,限制条件比较多,想的太复杂了点。
回归需求
当你想一个问题的时候想不到好的解决办法的时候或者不好实现某个需求的时候,你就应该回归需求的本身。
需求:统计某个得分点的错误率。
首先
因此就得先查出总数和错误数,总数使用count 就行,错误数单独的查简单,将错误数和总数合到一起展示不是那么容易想到。
最终的办法:使用sum函数,参数带表达式
select count(*) total,sum(case when obtain=0 then 1 else 0 end) errorCounts...
from t_scoreItem
where ...
后来发现还有一种方式实现,使用union all:
SELECT SUM(正确数)+SUM(错误数) AS 总记录数,SUM(正确数),SUM(错误数)
FROM (
SELECT COUNT(1) 正确数,0 错误数
FROM TB
WHERE STATUS=1
UNION ALL
SELECT 0 正确数,COUNT(1) 错误数
FROM TB
WHERE STATUS=0
) a
总结
本文是统计错误率的,由此可以拓展到查询其他状态的数据的数量占总数的比例,希望对读者有所帮助:D
SQL语句统计错误率的更多相关文章
- SQL语句统计每天、每月、每年的 数据
SQL语句统计每天.每月.每年的数据 1.每年select year(ordertime) 年,sum(Total) 销售合计from 订单表group by year(ordertime) 2.每月 ...
- 【转】SQL语句统计每天、每月、每年的数据
原文:https://www.cnblogs.com/Fooo/p/3435687.html SQL语句统计每天.每月.每年的数据 1.每年select year(ordertime) 年,sum(T ...
- 简单Sql语句统计每年每个月的数据,每个月为数据的每列,简单SQL练习
有一张表,数据如下 请写出结果为以下的SQL语句. 在mysql中创建表 CREATE TABLE `aa` ( `id` int(10) NOT NULL AUTO_INCREMENT COMME ...
- 写sql语句统计各个学生各科成绩(case when用法)
尊重原创:http://blog.csdn.net/love_java_cc/article/details/78268326 有如下一张表score: 建表语句: CREATE TABLE `sco ...
- SQL语句统计每天、每月、每年的数据
1.每年select year(ordertime) 年,sum(Total) 销售合计from 订单表group by year(ordertime) 2.每月select year(orderti ...
- SQL语句统计一段时间内的记录数
实际应用中经常需要统计单位时间的记录数: 一个小时: SELECT ),createdate,) AS 日期 ,DATEPART(hh,createdate) AS 小时,COUNT(*)AS 记录 ...
- SQL语句统计每天的数据
按用户注册时间统计每天注册的不同来源.不同状态的用户数量: ), RegisterTime, ) RDate ,--DATEPART(YEAR, RegisterTime) 年 ) END 'AWai ...
- SQL 一条SQL语句 统计 各班总人数,男女各总人数 ,各自 男女 比例 (转)
select sClass 班级,count(*) 班级学生总人数, sum(case when sGender=0 then 1 else 0 end) 女生人数, sum(case when ...
- oracle一条sql语句统计充值表中今天,昨天,前天三天充值记录
select NVL(sum(case when create_date_time>=to_date('2014-11-24 00:00:00','yyyy-mm-dd hh24:mi:ss') ...
随机推荐
- SQL DATE_SUB 函数用法
SQL DATE_SUB 是一个mySql函数.不象SQL DATE_ADD 函数 增加时间值,SQL DATE_SUB 将从一个日期/时间值中减去一个时间值(时间间隔). SQL DATE_SUB ...
- split分隔
split() : 把一个字符串分割成字符串数组 <script> var str="name=ww;value=ll"; var mm=str.split(" ...
- 神奇的make自动生成include file的功能
嗯,今天研究公司makefile的代码,始终搞不明白有一段下载编译依赖的rule recipe(对这个名词不了解请参考make的官方文档)是怎么执行的.明明在执行的时候并指定的target并没有依赖那 ...
- C# 鼠标穿透窗体与恢复
转自原文 C# 鼠标穿透窗体与恢复 引入user32.dll [DllImport("user32.dll")] public static extern uint SetWind ...
- 变体类型 Variant VARIANT
变体类型 Variant VARIANT class RTL_DELPHIRETURN Variant: public TVarData typedef struct tagVARIANT V ...
- 黑暗之光 Day2
1. 鼠标点击UI检测 UICamera.isOverUI 2. 鼠标指针管理 public class CussorManager : MonoBehaviour { public static C ...
- java第三方类库实现图片等比缩放
public class ThumbnailTest { public static void main(String[] args) { InputStream is = null; try { / ...
- Python常见字符串处理操作
Python中字符串处理的方法已经超过37种了,下面是一些常用的字符串处理的方法,以后慢慢添加. >>> s = 'Django is cool' #创建一个字符串 >> ...
- SPI子系统分析之二:数据结构
内核版本:3.9.5 spi_master struct spi_master用来描述一个SPI主控制器,我们一般不需要自己编写spi控制器驱动. /*结构体master代表一个SPI接口,或者叫一个 ...
- Robocopy和xxcopy全掌握
Windows提供的复制操作功能实在是太过简陋,可定制性又不强,在复制.移动.备份文件夹的时候,总要循环往复做多次操作.现在我们就向你介绍两款强力复制备份软件:Robocopy和XXCOPY,具体功能 ...