zoukankan      html  css  js  c++  java
  • mysql数据库表索引

    一:为什么需要索引

    为了查询速度变快

    二:索引底层是用什么数据结构实现的?

    索引就是排好序数据结构

    select * from table where Clo2=23

    没有索引的表,mysql的查找流程是逐行比对,直到找到Clo2=23返回数据,或者全部扫描完没有找到,返回空

    查到结果需要扫描7次

    1. 二叉树

    假设Col2是一个数据结构

    二叉搜索树

     同样按照上面的查找语句,只需要扫描4次

    自平衡二叉查找树

     需要扫描3次

    假如把col1的字段用儿叉搜索树存储

    对于连续递增的字段,如果索引结构是二叉树,其实要找到7也是相当于便利整个表,效率很低

    2. 红黑树

    解决了连续递增的字段,查找7,扫描4次

    3. b树

    节点可以存储多个数,找到7需要扫描3次。

    如果我的横向节点存放的数上限是7(其实就只能放置6个)的话,扫描到7需要2次。

    4. b+树

    # TODO

  • 相关阅读:
    RABC权限管理
    七牛云上传
    支付宝沙箱支付(Django端)超适合小白哦~
    ModelSerialzier + ModelViewSet基础使用
    微博三方登录
    Celery梳理
    ios 动画
    ios 贝塞尔动画
    ios 贝塞尔
    ios Masonry 开发细节
  • 原文地址:https://www.cnblogs.com/meloncodezhang/p/13308953.html
Copyright © 2011-2022 走看看