bond 来看一个烂语句:

select a.*,b.dn from temp_allcrmuser a, phs_smc_user b

 where a.USERNUMBER=b.dn

 and (a.ACTFLAG<>b.ACT_FLG

 or a.ENABLEFLAG<>b.ENABLE_FLG);

汽水 15:50:29

但是对你自己做实验,搞工作极其有利

bond15:50:34

-------------------------------------------------------------------------------------------------

| Id  | Operation                     | Name            | Rows  | Bytes | Cost (%CPU)| Time     |

-------------------------------------------------------------------------------------------------

|   0 | SELECT STATEMENT              |                 |     2 |   112 |    12  (17)| 00:00:01 |

|   1 |  CONCATENATION                |                 |       |       |            |          |

|   2 |   MERGE JOIN                  |                 |     1 |    56 |     6  (17)| 00:00:01 |

|   3 |    TABLE ACCESS BY INDEX ROWID| PHS_SMC_USER    |    22 |   396 |     3   (0)| 00:00:01 |

|   4 |     INDEX FULL SCAN           | IND_SMC_USER_DN |    22 |       |     1   (0)| 00:00:01 |

|*  5 |    FILTER                     |                 |       |       |            |          |

|*  6 |     SORT JOIN                 |                 |    82 |  3116 |     3  (34)| 00:00:01 |

|   7 |      TABLE ACCESS FULL        | TEMP_ALLCRMUSER |    82 |  3116 |     2   (0)| 00:00:01 |

|   8 |   MERGE JOIN                  |                 |     1 |    56 |     6  (17)| 00:00:01 |

|   9 |    TABLE ACCESS BY INDEX ROWID| PHS_SMC_USER    |    22 |   396 |     3   (0)| 00:00:01 |

|  10 |     INDEX FULL SCAN           | IND_SMC_USER_DN |    22 |       |     1   (0)| 00:00:01 |

|* 11 |    FILTER                     |                 |       |       |            |          |

|* 12 |     SORT JOIN                 |                 |    82 |  3116 |     3  (34)| 00:00:01 |

|  13 |      TABLE ACCESS FULL        | TEMP_ALLCRMUSER |    82 |  3116 |     2   (0)| 00:00:01 |

-------------------------------------------------------------------------------------------------

bond(510330025) 15:50:48

  5 - filter("A"."ENABLEFLAG"<>"B"."ENABLE_FLG")

   6 - access("A"."USERNUMBER"="B"."DN")

       filter("A"."USERNUMBER"="B"."DN")

  11 - filter("A"."ACTFLAG"<>"B"."ACT_FLG" AND LNNVL("A"."ENABLEFLAG"<>"B"."ENABLE_FLG"))

  12 - access("A"."USERNUMBER"="B"."DN")

       filter("A"."USERNUMBER"="B"."DN")

SELECT *

  FROM (SELECT rownum,

               a.owner       AS owner_a,

               b.owner       AS owner_b,

               a.object_id   AS object_id_a,

               b.object_id   AS object_id_b,

               a.object_name

          FROM test1 a

         INNER JOIN test2 b

            ON b.object_name = a.object_name)

 WHERE (owner_a <> owner_b OR object_id_a <> object_id_b)

重庆-有教无类16:23:11

这个它改不了了

重庆-有教无类 16:26:13

咋样

重庆-有教无类16:26:17

还con不

bond 16:27:17

==

bond 16:30:59

select * from

(

select rownum a_rownum,a.ACTFLAG a_ACTFLAG,a.ENABLEFLAG a_ENABLEFLAG,b.dn,b.ACT_FLG b_ACT_FLG,b.ENABLE_FLG  b_ENABLE_FLG


from temp_allcrmuser a

join phs_smc_user b

 on a.USERNUMBER=b.dn) t

where (a_ACTFLAG<>b_ACT_FLG or a_ENABLEFLAG<>b_ENABLE_FLG);

----------------------------------------------------------------------------------------

| Id  | Operation            | Name            | Rows  | Bytes | Cost (%CPU)| Time     |

----------------------------------------------------------------------------------------

|   0 | SELECT STATEMENT     |                 |    22 |  1694 |  8740   (6)| 00:01:45 |

|*  1 |  VIEW                |                 |    22 |  1694 |  8740   (6)| 00:01:45 |

|   2 |   COUNT              |                 |       |       |            |          |

|*  3 |    HASH JOIN         |                 |    22 |  1232 |  8740   (6)| 00:01:45 |

|   4 |     TABLE ACCESS FULL| PHS_SMC_USER    |    22 |   396 |    12   (0)| 00:00:01 |

|   5 |     TABLE ACCESS FULL| TEMP_ALLCRMUSER |    10M|   394M|  8571   (4)| 00:01:43 |

--------------------------------------------------------------------------------------

Predicate Information (identified by operation id):

---------------------------------------------------

1 - filter("A_ACTFLAG"<>"B_ACT_FLG" OR "A_ENABLEFLAG"<>"B_ENABLE_FLG")

   3 - access("A"."USERNUMBER"="B"."DN")

bond 16:31:05

靠,可以了

bond 16:31:18

就是因为rownum?

史狮16:31:22

太牛b

。。。。。省略。。。。。

bond 16:41:27

select /*+ Use_hash(a,b) no_expand*/ a.*,b.dn from temp_allcrmuser a, phs_smc_user b

 where a.USERNUMBER=b.dn

 and (a.ACTFLAG<>b.ACT_FLG

 or a.ENABLEFLAG<>b.ENABLE_FLG);

 

--------------------------------------------------------------------------------------

| Id  | Operation          | Name            | Rows  | Bytes | Cost (%CPU)| Time     |

--------------------------------------------------------------------------------------

|   0 | SELECT STATEMENT   |                 |    18 |  1008 |  8740   (6)| 00:01:45 |

|*  1 |  HASH JOIN         |                 |    18 |  1008 |  8740   (6)| 00:01:45 |

|   2 |   TABLE ACCESS FULL| PHS_SMC_USER    |    22 |   396 |    12   (0)| 00:00:01 |

|   3 |   TABLE ACCESS FULL| TEMP_ALLCRMUSER |    10M|   394M|  8571   (4)| 00:01:43 |

--------------------------------------------------------------------------------------

用no_expand HINT也可以

在ORACLE11g 之前,CBO 还是会犯SB ,11g之后 不会自动的 expand了,

注意,上面都是我的学生

no_expand优化案例的更多相关文章

  1. 数据库优化案例——————某市中心医院HIS系统

    记得在自己学习数据库知识的时候特别喜欢看案例,因为优化的手段是容易掌握的,但是整体的优化思想是很难学会的.这也是为什么自己特别喜欢看案例,今天也开始分享自己做的优化案例. 最近一直很忙,博客产出也少的 ...

  2. mysql优化案例

    MySQL优化案例 Mysql5.1大表分区效率测试 Mysql5.1大表分区效率测试MySQL | add at 2009-03-27 12:29:31 by PConline | view:60, ...

  3. SQL 优化案例 1

    create or replace procedure SP_GET_NEWEST_CAPTCHA( v_ACCOUNT_ID in VARCHAR2, --接收短信的手机号 v_Tail_num i ...

  4. 老李案例分享:Weblogic性能优化案例

    老李案例分享:Weblogic性能优化案例 POPTEST的测试技术交流qq群:450192312 网站应用首页大小在130K左右,在之前的测试过程中,其百用户并发的平均响应能力在6.5秒,性能优化后 ...

  5. Hive优化案例

    1.Hadoop计算框架的特点 数据量大不是问题,数据倾斜是个问题. jobs数比较多的作业效率相对比较低,比如即使有几百万的表,如果多次关联多次汇总,产生十几个jobs,耗时很长.原因是map re ...

  6. 数据库优化案例——————某知名零售企业ERP系统

    写在前面 记得在自己学习数据库知识的时候特别喜欢看案例,因为优化的手段是容易掌握的,但是整体的优化思想是很难学会的.这也是为什么自己特别喜欢看案例,今天也分享自己做的优化案例. 之前分享过OA系统.H ...

  7. Spark集群之yarn提交作业优化案例

    Spark集群之yarn提交作业优化案例 作者:尹正杰 版权声明:原创作品,谢绝转载!否则将追究法律责任. 一.启动Hadoop集群 1>.自定义批量管理脚本 [yinzhengjie@s101 ...

  8. MySQL参数优化案例

    环境介绍 优化层级与指导思想 优化过程 最小化安装情况下的性能表现 优化innodb_buffer_pool_size 优化innodb_log_files_in_group&innodb_l ...

  9. MySQL的索引单表优化案例分析

    建表 建立本次优化案例中所需的数据库及数据表 CREATE DATABASE db0206; USE db0206; CREATE TABLE `db0206`.`article`( `id` INT ...

随机推荐

  1. SpringBoot启动报错Failed to determine a suitable driver class

    SpringBoot启动报错如下 Error starting ApplicationContext. To display the conditions report re-run your app ...

  2. JavaScript 生成32位UUID

    function uuid(){ var len=32; //32长度 var radix=16; //16进制 var chars='0123456789ABCDEFGHIJKLMNOPQRSTUV ...

  3. 【水滴石穿】ReactNativeMobxFrame

    项目地址如下:https://github.com/FTD-ZF/ReactNativeMobxFrame 应该可以说的是,项目也只是一个花架子,不过底部的tab稍微改变了 我们一起来看代码 //in ...

  4. 【POJ 3294】Life Forms

    [链接]h在这里写链接 [题意] 给你n个字符串. 让你找最长的字符串s; 这个s在超过一半的子串里面都有出现过且长度大于n/2; 如果有多个,输出多行. (按字典序输出) 也没说会不会出现大写. [ ...

  5. Linux之Shell1

    1.输出命令:echo echo [选项] [输出内容] : -e  支持反斜线控制的字符转换.(类似于C语言的\) \\ 输出\本身 \t Tab键 \n 换行符 \f 换页符 ...  

  6. PSPP:顶替SPSS常用功能的优秀软件, Linux 下的经济学用软件

    几个替代SPSS的软体Salstat http://salstat.sourceforge.net/PSPP http://www.gnu.org/software/pspp/pspp.htmlR h ...

  7. [C#] 使用WebSocket进行通讯

    客户端 客户端很简单 string url = "ws://localhost:24900/" + "test.ashx"; try { System.Net. ...

  8. golang数据类型二

    字符类型 3.14基本数据类型的相互转换 3.15基本数据类型和string的转换 FormatInt // FormatUint 将 int 型整数 i 转换为字符串形式// base:进位制(2 ...

  9. 【JZOJ4810】【NOIP2016提高A组五校联考1】道路规划

    题目描述 输入 输出 样例输入 5 1 4 5 2 3 3 4 2 1 5 样例输出 3 数据范围 样例解释 解法 模型显然. 设第一列为a[],第二列为b[],f[i]为前i个数的最大答案. 顺序枚 ...

  10. 大数据技术之Zookeeper

    第1章 Zookeeper入门 1.1 概述 Zookeeper是一个开源的分布式的,为分布式应用提供协调服务的Apache项目. 1.2 特点 1.3 数据结构 1.4 应用场景 提供的服务包括:统 ...