码农知识堂 - 1000bd
  •   Python
  •   PHP
  •   JS/TS
  •   JAVA
  •   C/C++
  •   C#
  •   GO
  •   Kotlin
  •   Swift
  • 索引设计的原则?


    查询更快、占⽤空间更⼩

    原则:

    1. 适合索引的列是出现在 where ⼦句中的列,或者连接⼦句中指定的列
    2. 基数较⼩ 的表, 索引效果较差 ,没有必要在此列建⽴索引
    3. 使⽤ 短索引 ,如果对 ⻓字符串列 进⾏索引,应该指定⼀个前缀⻓度,这样能够节省⼤量索引空间,如果搜索词超过索引前缀⻓度,则使⽤索引排除不匹配的⾏,然后检查其余⾏是否可能匹配。
    4. 不要过度索引 。 索引需要额外的磁盘空间 , 并降低写操作的性能 。在修改表内容的时候,索引会进⾏更新甚⾄重构,索引列越多,这个时间就会越⻓。所以只保持需要的索引有利于查询即可。
    5. 定义有 外键 的数据列⼀定要建⽴索引。
    6. 更新频繁字段不适合创建索引
    7. 若是不能有效区分数据的列不适合做索引列(如性别,男⼥未知,最多也就三种,区分度实在太低)
    8. 尽量的 扩展索引 ,不要 新建索引 。⽐如表中已经有a的索引,现在要加(a,b)的索引,那么只需要修改原来的索引即可。
    9. 对于那些查询中很少涉及的列,重复值⽐较多的列不要建⽴索引。
    10. 对于定义为 text 、 image 和 bit 的数据类型的列不要建⽴索引。

     

  • 相关阅读:
    基于UDP丢包统计程序设计
    【密评】商用密码应用安全性评估从业人员考核题库(十四)
    域内持久化后门
    web网页设计期末课程大作业:美食餐饮文化主题网站设计——中华美德6页面HTML+CSS+JavaScript
    sentinel简单限流和降级demo问题记录
    计算机基础之链接(Linking)
    yolo的一个ui界面中做一个摄像头检测的功能
    七天入门node.js(02)
    Less教程及常用的操作
    Java项目:SSM停车场管理系统
  • 原文地址:https://blog.csdn.net/m0_70734549/article/details/126230996
  • 最新文章
  • 沪漂五周年了:我越来越迷茫了
    Agentic Skill Routing 实战:别再把所有 Skill 塞进 AI Agent 上下文
    MySQL-Seconds_behind_master的精度误差
    [MAF预定义ChatClient中间件-03]CachingChatClient——利用缓存省钱省时间
    AI的至暗历史:从万众期待到被政府撤资,AI的两次死亡徘徊
    Agent OS :五种驯服不确定性的范式
    PortSwigger SQL注入LAB11
    数据库即时编译JIT
    [Begin]AI Learn Data Day 0
    深度学习进阶(二十七)现代 LLM 的核心架构设计其二:SwiGLU
  • 热门文章
  • 十款代码表白小特效 一个比一个浪漫 赶紧收藏起来吧!!!
    奉劝各位学弟学妹们,该打造你的技术影响力了!
    五年了,我在 CSDN 的两个一百万。
    Java俄罗斯方块,老程序员花了一个周末,连接中学年代!
    面试官都震惊,你这网络基础可以啊!
    你真的会用百度吗?我不信 — 那些不为人知的搜索引擎语法
    心情不好的时候,用 Python 画棵樱花树送给自己吧
    通宵一晚做出来的一款类似CS的第一人称射击游戏Demo!原来做游戏也不是很难,连憨憨学妹都学会了!
    13 万字 C 语言从入门到精通保姆级教程2021 年版
    10行代码集2000张美女图,Python爬虫120例,再上征途
小工具 小游戏
Copyright © 2022 侵权请联系2656653265@qq.com    京ICP备2022015340号-1

京公网安备 11010502049817号