首页 > 数据库 >SQL-----索引设计原则

SQL-----索引设计原则

时间:2024-08-11 15:27:25浏览次数:5  
标签:查询 索引 ----- SQL null 区分度

索引设计原则
1、针对于数据量较大,于且查询比较频繁的表建立索引

    2、针对常作为查询条件(where)、排序(order by)、分组(group by)操作的字段建立索引

    3、尽量选择区分度高的列作为索引,尽量建立唯一索引,区分度越高,使用索引的效率越高

    4、如果是字符串类型的字段,字符的长度较长,可以针对字段的特点,建立前缀索引

    5、尽管使用联合索引,减少单列索引,查询时,联合索引很多时候可以覆盖索引,节省存储空间,避免回表提高查询效率

    6、要控制索引的数量,索引并不是多多益善,索引越多,维护索引结构的代价也就越大,会影响增删改的效率

    7、如果索引列不能存储null值,请在创建表时使用 not null约束它。当优化器知道每列是否包含null 值时 它可以更好地确定哪个索引最有效地用于查询

标签:查询,索引,-----,SQL,null,区分度
From: https://www.cnblogs.com/sulimin/p/18353474

相关文章

  • sqli-labs漏洞靶场~SQL注入(全网最全详解)
    #sqli-labs靶场适合于初学sql注入的新手,它包含了许多的场景和模式为练习者提供良好的练习平台,以下这些语句搞懂我们做靶场就如鱼得水,非常自信的可以完成。查询当前数据库版本:selectversion();●查询当前数据库:selectdatabase();●查询当前路径:select@@basedir;●......
  • CVE-2019-12422~shiro反序列化【春秋云境靶场渗透】
    #今天我们来攻克CVE-2019-12422春秋云境这个靶场漏洞当我们知道了该靶场是shiro反序列化漏洞,所以直接用工具梭哈好小子,离成功又近一步!!!......
  • CVE-2023-38633~XXE注入【春秋云境靶场渗透】
    今天我们来攻克春秋云境CTF的CVE-2023-38633#我们通过抓包来构造POC来查找/etc/passwd<?xmlversion="1.0"encoding="UTF-8"standalone="no"?><svgwidth="1000"height="1000"xmlns:xi="http://www.w3.org/2001/XInclude&......
  • 轻松找回:如何在PostgreSQL 16中重置忘记的数据库密码
    目录1.引言2.PostgreSQL16的新特性简介3.解决方法概述4.方法一:通过修改`pg_hba.conf`文件重置密码5.方法二:通过命令行进入单用户模式6.方法三:使用pgAdmin工具重置密码7.总结与最佳实践写在以后1.引言你有没有过这样的经历?当你满怀期待地打开电脑准备工作时,......
  • 操作符详解(内含二进制与原、反、补码知识点)--还有超详细图解!一看就会!
    前言今天给大家分享一下C语言操作符的详解,但在此之前先铺垫一下二进制和进制转换与原码、反码、补码的知识点,都有详细的图解,也希望这篇文章能对大家有所帮助,大家多多支持呀!目录前言一、二进制和进制转换1.  10进制转化为10进制​2.  2进制转化为10进制 ​2.......
  • 【SQL】参加测试的次数
    目录题目分析代码题目学生表: Students+---------------+---------+|ColumnName|Type|+---------------+---------+|student_id|int||student_name|varchar|+---------------+---------+在SQL中,主键为student_id(学生ID)。该表内的......
  • 240730-PostgreSQL的逻辑备份与物理备份
    PostgreSQL的逻辑备份与物理备份简介制定备份和恢复计划是每一个DBA最重要的工作之一,它决定了数据的有效性和完整性。也可以搭建跨越不同数据中心的流复制集群,能有效的帮助你避免单点故障。但是只有一份有效的备份能够帮助从delete或者drop的误操中恢复数据。制定备份和恢复计......
  • SQL转储
    PostgreSQL的备份和恢复-SQL转储与所有包含有价值数据的内容一样,应定期备份PostgreSQL数据库。虽然该过程本质上很简单,但清楚了解基础技术和假设非常重要。有三种从根本上不同的方法来备份PostgreSQL数据SQL转储文件系统级备份连续归档本文将重点介绍SQL转储使用的pg......
  • PostgreSQL的查询详解
    PostgreSQL的查询详解1.表表达式表表达式计算一个表。该表表达式包含一个FROM子句,该子句后面可以根据需要选用WHERE、GROUPBY和HAVING子句。最简单的表表达式只是引用磁盘上的一个表,一个所谓的基本表,但是我们可以用更复杂的表表达式以多种方法修改或组合基本表。表表达......
  • PostgreSQL的体系结构
    1.体系架构1、应用程序访问接口整个应用架构中,Postgresql数据库位于操作系统和应用程序之间,不同的编程语言使用不同的驱动程序链接到Postgresql数据库上,驱动分为两类:1.使用纯语言实现的Postgresql驱动,如JDBC、.NET等方式,这种链接方式不需要libpq库。2.通过包装Postgresql的......