zoukankan      html  css  js  c++  java
  • sql优化

    QS:SQL优化需要注意哪些点?

      1、尽量将被查询字段写出来,尽量避免例如:select * from table_name;如果使用*,数据库需要查询数据字典才能获取表中所有字段,这样会消耗时间。

      2、被排序字段,也可以加索引,例如:order by  column1,column2,这样直接使用索引去排序,会大大提高效率。

      3、对于使用模糊查询的字段,尽量给该字段加索引,但前提是like后第一位不能是%,否则不会使走索引,对该列全局匹配。尽量使用例如:select column1,column2 from table_name where column3 like 'xxx%'。

             4、如果可以,使用rowid查询效率最高。原因rowid组成:对象ID(OBJECTID)+文件ID+块ID+ROWID

    CASE:复制1000万行emp数据,在建立索引前后查询时间对比。

     复制emp1表,重复插入数据,开启计时:

    create table emp1 as select * from emp1;
    insert into emp1 select * from emp1;    
    set timing on;
    select * from (select * from emp3 order by empno)t where rownum <=10;

    `

    给被排序的字段加索引,查询并计时:

    create index emp1_index on emp1(empno);
    select * from (select * from emp3 order by empno)t where rownum <=10;

    Best Regards
  • 相关阅读:
    Codeforces Round #498 (Div. 3) E. Military Problem
    codeforces ~ 1009 B Minimum Ternary String(超级恶心的思维题
    二叉排序树
    codeforces ~ 1004 C Sonya and Robots (dp)
    fragment shader的优化
    计算带宽
    trilinear filter
    GPU bubbles
    Dx12 occlusion query
    非意外的PDB错误 OK(0)
  • 原文地址:https://www.cnblogs.com/pecool/p/9726366.html
Copyright © 2011-2022 走看看