`

count查询 统计子表和主表数据

 
阅读更多
1. 查询 子表中,不同的类型统计,
  主表 几千条,子表60万数据,下面查询花了 40秒。

  select
  su.* ,
      ( select count(*) from  dtl e where   e.check_stat='EQ' and  e.batch_no=su.batch_No) EQ,
    ( select count(*) from  dtl w where   w.check_stat !='EQ' and  w.batch_no=su.batch_No) notEQ
     from t_SUM su
  where 1=1
经过 DBA 优化,先查询数据,分组统计之后,再关联,60万的子表速度只有0.34秒

select su.*, w.EQ, w.notEQ
  from  T_SUM su,
       (select batch_no, sum(EQ) EQ, sum(notEQ) notEQ
          from (select batch_no,
                       decode(check_stat, 'EQ', 1, 0) EQ,
                       decode(check_stat, 'EQ', 0, 1) notEQ
                  from dtl)
         group by batch_no) w
where su.batch_No = w.batch_no;

2. mysql 统计不在子表出现的数据。 数据量6万花费了2秒钟,

select count(1) from applies ap where ap.transaction_status='0' and  not exists(
select 1 from readrecords r on ap.id =r.applies_id )

按照1的思路,先出数据,再汇总,先查询总数据,再查询等值关联的数据,那么剩下来的就是不在 表里面的数据。

SELECT
(
SELECT
count(*) sum1
FROM
applies cc
WHERE
cc.transaction_status = '0'
) - (
SELECT
count(DISTINCT ap.id) sum2
FROM
applies ap
INNER JOIN readrecords r ON ap.id = r.applies_id
WHERE
ap.transaction_status = '0'
)






分享到:
评论

相关推荐

    matlab数理统计数据分析:16 natlab逻辑与流程控制(含教学视频).zip

    首先,数理统计数据分析在MATLAB中包括广泛的操作,如数据预处理、概率分布分析、假设检验、回归分析、方差分析、聚类和主成分分析等。例如,你可以使用`histogram`函数创建直方图来可视化数据分布,`corrcoef`计算...

    常考SQL语句.pdf

    在处理这些SQL语句时,需要注意正确使用表的别名(例如,在第一个例题中使用了a和b作为表的别名),合理安排子查询和主查询的关系,以及熟悉各种SQL函数和操作符的用法。这些例题涵盖了数据库查询中的一些基础且常用...

    excel在统计中的应用

    2. 基本统计计算:Excel内置了丰富的统计函数,如COUNT、SUM、AVERAGE、MAX、MIN等,可以进行数据的计数、求和、平均值、最大值和最小值等基本统计计算。此外,还提供了标准差、方差等描述性统计量的计算。 3. 分布...

    CPU语言程序编程与汇编考试题及答案(试卷二).pdf

    - 当子程序和主程序位于同一代码段,子程序通常定义为`NESR`(Near SubRoutine)属性,表示近调用,调用后的返回地址存放在堆栈中较近的位置。 - 若子程序与主程序不在同一代码段,定义为`FAR`(Far SubRoutine)...

    数据库期末资料.doc

    - **嵌套查询**:子查询可以独立或依赖于父查询,用于更复杂的条件判断。 - **集合操作**:`INTERSECT`、`UNION`、`EXCEPT`用于合并或对比结果集。 - **派生表**:在查询中创建临时表。 - **数据插入**:`INSERT...

    2021-2022计算机二级等级考试试题及答案No.2795.docx

    4. 查询各类商品的数量,正确的SQL语句是SELECT COUNT(类型) AS 商品数量, 类型 FROM 商品 GROUP BY 类型 - 这是SQL的聚合函数COUNT()和GROUP BY语句的用法,用于统计每个商品类型的数量。 5. 软盘启动DOS的操作...

    环境数据分析的计算的可视化方法.docx

    Excel是一款广泛应用于数据处理的工具,尤其在统计报表和基础数据分析方面表现出色。然而,当面临复杂的环境模型,如环境污染的分类、污染因素的识别、环境污染预测与模拟等问题时,Excel的计算能力则显得不足。...

    SQL server 2000自学教程

    6. 子查询:嵌套查询来获取满足特定条件的结果集。 五、数据操作 1. 插入数据:使用INSERT INTO语句向表中添加新记录。 2. 更新数据:使用UPDATE语句修改现有记录。 3. 删除数据:使用DELETE FROM语句移除不再需要...

    MySql案例库(sakila)

    - **子查询**:嵌套查询以满足更复杂的条件,比如找出支付最多的客户。 - **排序与限制**:使用`ORDER BY`和`LIMIT`进行数据排序和限制返回结果的数量。 4. **事务处理** 在Sakila数据库中,可以学习如何使用SQL...

    python分析中国大学分布情况

    pandas的`groupby()`函数可以按照省份或者高校类别进行数据分组,然后使用`count()`、`sum()`等方法进行统计计算,得出各省份985和211高校的数量。 在绘制"高质量院校分布热力图"时,我们可能用到matplotlib、...

    ObjectARX源码-查找字符出现的次数.pdf

    第一行代码声明并初始化了一个名为`count`的变量,它用于统计子字符串出现的次数。 ```cpp while(*str != '\0') // 遍历主字符串直到遇到结束符'\0' { s1 = str; // 将s1指向主字符串的当前位置 s2 = s; // 将s2...

    仓库管理系统

    根据给定的文件信息,我们可以总结出以下关于“仓库管理系统”的关键知识点: ...综上所述,这段代码展示了仓库管理系统的核心数据结构设计和基本功能实现,涵盖了产品信息管理、出入库操作以及查询统计等主要方面。

    2021-2022计算机二级等级考试试题及答案No.13373.docx

    - 在Visual FoxPro环境下,统计表中的记录数应使用`SELECT COUNT(*) FROM 表名`这样的SQL语句,而非直接调用`MODIFY STRUCTURE`命令。 12. **Access中的字段管理** - 删除表中的字段之前,如果该字段参与了表间...

    小区物业管理系统.doc

    - `create()`、`print()`、`save_inf()`、`read_inf()`、`find()`、`re()`、`delete()`、`add()`、`sort()`和`count()`函数分别对应信息的录入、显示、保存、读取、查找、修改、删除、添加、排序和统计功能。...

    2021-2022计算机二级等级考试试题及答案No.9032.docx

    - **解释**:在SQL查询语句中,`GROUP BY`关键字用于对数据进行分组,常与聚合函数如COUNT、SUM等一起使用,以便按特定列的值对数据进行分组统计。 #### 7. 数据类型转换 - **知识点**:在C语言中,不同类型间的...

    2021-2022计算机二级等级考试试题及答案No.12446.docx

    19. 统计函数:在某些数据库系统中,`COUNT()`函数用于统计特定字段的记录数,而不是值的个数。 20. 资源唯一标识:Web上的资源通过URL(统一资源定位符)进行唯一标识和访问。 21. 满二叉树:满二叉树的性质指出...

    C#程序开发范例宝典

    这在MDI子窗体最大化时尤其有用,因为此时子窗体和主窗体的菜单会自动合并,提供统一的菜单体验。 **技术要点:** C# 2.0引入了ContextMenuStrip控件,用于创建弹出菜单。通过该控件的`Items`属性,可以操作菜单中...

Global site tag (gtag.js) - Google Analytics