首页 数据库 mysql教程 filter造成的性能问题

filter造成的性能问题

Jun 07, 2016 pm 05:33 PM
filter 数据库

filter这个词总让人很费解,它下一级可以挂 一个子节点,二个子节点,三个子节点...。挂一个子节点意思过滤,如对全表进行扫描后

挂一个子节点意思过滤,如对全表进行扫描后,,按照条件过滤,丢弃不满足条件的数据。

挂二个子节点类似是nest loop。

挂三个子节点类似1和2做nest loop,结果集再与3做nest loop(这个是我推测的)。

SQL> set linesize 300
SQL> set timing on
SQL> set autotrace traceonly
SQL> SELECT count(DISTINCT BI.RISK_BASE_ID) count
2 FROM GG_RISK_BASE_INFO BI,
3 GG_TASK_FORM_CLASSTEMPLATE FC,
4 GG_TASK_FORM_TEMPLATEVERSION FT,
5 GG_TASK_FORM_RELATIONTEMPLAT FR,
6 GG_TASK_WORK_SHEET WS,
7 GG_TASK_FORM_EXETASKRECORD FE
8 WHERE FC.RISK_BASE_ID = BI.RISK_BASE_ID
9 and FT.TEMPLATE_FID = FC.TEMPLATE_ID
10 and FR.TEMPLATE_VERSION_ID = FT.TEMPLATE_VERSION_ID
11 and FR.OBJECT_ID = WS.WORK_SHEET_ID
12 and FE.REL_TEMP_ID = FR.REL_TEMP_ID
13 and FR.REL_OBJECT_TYPE = '1'
14 AND FE.TASK_START_TIME > BI.RISK_ASSESS_TIME
15 and (exists
16 (SELECT 1
17 FROM GG_TASK_FORM_RISK_CTL_LOG CL
18 where CL.TEMPLATE_VERSION_ID = FT.TEMPLATE_VERSION_ID) or exists
19 (SELECT 1
20 FROM GG_TASK_FORM_NEW_RISK_INFO RI
21 where RI.REL_TEMP_ID = FR.REL_TEMP_ID));


已用时间: 00: 04: 10.36
执行计划

数据规模:
select count(1) from GG_RISK_BASE_INFO; --2828
select count(1) from GG_TASK_FORM_CLASSTEMPLATE; --5600
select count(1) from GG_TASK_FORM_TEMPLATEVERSION; --7646
select count(1) from GG_TASK_FORM_EXETASKRECORD; --33064
select count(1) from GG_TASK_FORM_RELATIONTEMPLAT; --67319
select count(1) from GG_TASK_FORM_RISK_CTL_LOG;--5210
select count(1) from GG_TASK_FORM_NEW_RISK_INFO;--27831


CREATE INDEX IDX_PTNRI_REL_TEMP_ID ON GG_TASK_FORM_NEW_RISK_INFO(REL_TEMP_ID);
CREATE INDEX IDX_PTFRCL_REL_T_V_ID ON GG_TASK_FORM_RISK_CTL_LOG(TEMPLATE_VERSION_ID);

linux

本站声明
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn

热门文章

仓库:如何复兴队友
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶体解释及其做什么(黄色晶体)
1 周前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热门文章

仓库:如何复兴队友
3 周前 By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶体解释及其做什么(黄色晶体)
1 周前 By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒险:如何获得巨型种子
3 周前 By 尊渡假赌尊渡假赌尊渡假赌

热门文章标签

记事本++7.3.1

记事本++7.3.1

好用且免费的代码编辑器

SublimeText3汉化版

SublimeText3汉化版

中文版,非常好用

禅工作室 13.0.1

禅工作室 13.0.1

功能强大的PHP集成开发环境

Dreamweaver CS6

Dreamweaver CS6

视觉化网页开发工具

SublimeText3 Mac版

SublimeText3 Mac版

神级代码编辑软件(SublimeText3)

Go语言如何实现数据库的增删改查操作? Go语言如何实现数据库的增删改查操作? Mar 27, 2024 pm 09:39 PM

Go语言如何实现数据库的增删改查操作?

在PHP中使用MySQLi建立数据库连接的详尽教程 在PHP中使用MySQLi建立数据库连接的详尽教程 Jun 04, 2024 pm 01:42 PM

在PHP中使用MySQLi建立数据库连接的详尽教程

Hibernate 如何实现多态映射? Hibernate 如何实现多态映射? Apr 17, 2024 pm 12:09 PM

Hibernate 如何实现多态映射?

iOS 18 新增'已恢复”相册功能 可找回丢失或损坏的照片 iOS 18 新增'已恢复”相册功能 可找回丢失或损坏的照片 Jul 18, 2024 am 05:48 AM

iOS 18 新增'已恢复”相册功能 可找回丢失或损坏的照片

MySQL数据库管理系统的基本原理解析 MySQL数据库管理系统的基本原理解析 Mar 25, 2024 pm 12:42 PM

MySQL数据库管理系统的基本原理解析

深入解析HTML如何读取数据库 深入解析HTML如何读取数据库 Apr 09, 2024 pm 12:36 PM

深入解析HTML如何读取数据库

PHP处理数据库中文乱码的技巧与实践 PHP处理数据库中文乱码的技巧与实践 Mar 27, 2024 pm 05:21 PM

PHP处理数据库中文乱码的技巧与实践

Go WebSocket 如何与数据库集成? Go WebSocket 如何与数据库集成? Jun 05, 2024 pm 03:18 PM

Go WebSocket 如何与数据库集成?

See all articles