zoukankan      html  css  js  c++  java
  • 索引

    思考:在图书馆中是如何找到一本书的?

    一般的应用系统对比数据库的读写比例在10:1左右,而且插入操作和更新操作很少出现性能问题

    遇到最多的,也是最容易出问题的,还是一些复杂的查询操作,所以查询语句的优化,是重中之重

    当数据库中数据量很大时,查找数据就会变得很慢

    优化方案:索引

         语法:方法1:建表时创建索引:

                

                 查看索引:show index from 表名;

            方法2:建表时,没有索引:

                

                 查看索引:show index from 表名;

                

            添加索引:

                

                 create index t_name on t_index(name(10))  如果是varchar,要指定长度

                 create index t_age on t_index(age)

             查看索引:

                 

                 

              删除索引:drop index 索引名称 on 表名;

          例题:创建表,插入10万条数据:

                

                

             开启运行时间监测:set profiling=1;

                

            查询第10000条数据:

                

             查看执行时间:show profiles;

                

             创建索引:create index title_index on test_index<title<10>>;

                

             查询第10000条数据:

                

             如果指定字段时字符串,需要指定长度,建议长度与定义字段时的长度一致

             字段类型,如果不是字符串,可以不填写长度部分

          缺点:提高查询速度,也会降低更新速度

          分析查询语句:

                

                

                 查询的时候,用到title_index 的索引

      

  • 相关阅读:
    ParksLink修改密码
    ORA-01940:无法删除当前已链接的用户
    imp导入数据的时候报错:ORA-01658: 无法为表空间 MAXDATA 中的段创建 INITIAL 区
    Linux下查看日志用到的常用命令
    大批量数据高效插入数据库表
    线程中断:Thread类中interrupt()、interrupted()和 isInterrupted()方法详解
    CyclicBarrier、CountDownLatch、Callable、FutureTask、thread.join() 、wait()、notify()、Condition
    Mysql全文索引
    Docker 镜像的常用操作
    Docker 入门
  • 原文地址:https://www.cnblogs.com/xiaomengceshi/p/13645241.html
Copyright © 2011-2022 走看看