文档章节

数据库 索引

 非想非非想
发布于 2017/08/28 09:55
字数 361
阅读 0
收藏 0

一般的索引都是B_树索引(INDEX),还有一种是位图索引(BITMAP INDEX)。

创建索引的原则: 当任何单个查询要检索的行少于或等于整个表行数的10%时,索引就非常有用。

Oracle数据库会自动为表的主键以及包含在唯一约束中的列自动创建B-树索引。

B_树  基础为二叉查找树结构,其查找的时间复杂度O(log2N) ,包括二叉查找树,平衡二叉查找树,红黑树,进阶则是B-树、B+树、B*树。

位图索引创建原则:用在包含大量数据且内容不常修改的表中(数据仓库)。而且只应该在包含少量不同值得列上创建。如果某列的不同值数量少于表中行数的1%,或者如果某列的值的重复次数多余100次,那么此列就是位图索引的候选列。例如有一个表,它包含一百万行,那么小于等于一万个不同值的列就是很不错的位图索引候选列。对表行的更新应该极少,且列需要频繁的用在查询的WHERE子句中。

mysql索引

SHOW INDEX FROM table_name;

CREATE INDEX indexName ON mytable(username(length));

ALTER mytable ADD INDEX [indexName] ON (username(length)) ;

ALTER TABLE mytable ADD INDEX name_city_age (name(10),city,age);
ALTER TABLE mytable ADD INDEX (c);

ALTER TABLE mytable DROP INDEX c;

DROP INDEX [indexName] ON mytable;

 

© 著作权归作者所有

共有 人打赏支持
上一篇: Git 操作
下一篇: spring 常见问题
粉丝 1
博文 43
码字总数 25733
作品 0
西安
私信 提问
SQL基础-DDL数据定义语言

SQL数据定义语言-DDL语句 DDL语句部分使我们有能力创建或删除表格。我们也可以定义索引(键),规定表之间的链接,以及施加表间的约束。 语句 释义 CREATE DATABASE 创建新数据库 ALTER DATA...

ZHAO_JH
08/10
0
0
Where语句设置不当导致索引失效

虽然说索引在使用上可能有种种限制,但是还是在数据库设计中被充分利用。因为在大部分情况下索引还是被用来提高数据库性能的一个工具。 虽然说索引在使用上可能有种种限制,但是还是在数据库...

疯狂的艺术家
2011/04/01
0
1
Oracle创建索引要做到三个适当

在Oracle数据库中,创建索引虽然比较简单。但是要合理的创建索引则比较困难了。笔者认为,在创建索引时要做到三个适当,即在适当的表上、适当的列上创建适当数量的索引。虽然这可以通过一句话...

超人不会飞
2012/07/28
0
0
数据库系统学习一

学习书《数据库系统教程》第三版 作者:施伯乐 1、什么是索引? a、在关系数据库中,索引是表或视图在数据库中的一种结构,他可以使对应的表的SQL语句执行更快。索引的作用相当于图书的目录,...

小湘西
2015/10/22
55
0
微服务化的数据库设计与读写分离

本文由 网易云 发布 作者:刘超,网易云解决方案架构师 数据库永远是应用最关键的一环,同时越到高并发阶段,数据库往往成为瓶颈,如果数据库表和索引不在一开始就进行良好的设计,则后期数据...

wangyiyungw
05/15
0
0

没有更多内容

加载失败,请刷新页面

加载更多

Spring boot 各种常用注解总结(不断完善中)

@Configuration把一个类作为一个IoC容器,它的某个方法头上如果注册了@Bean,就会作为这个Spring容器中的Bean。 @Scope注解 作用域 @Lazy(true) 表示延迟初始化 @Service用于标注业务层组件、...

覃大光
11分钟前
0
1
《让家庭教育回归生活》读书笔记3000字范文

《让家庭教育回归生活》读书笔记3000字范文: 以前,只知道新东方是教英语的,也培训挖掘机司机,一直不知道他们还研究家庭教育。读了《让家庭教育回归生活》一书,才知道他们的家庭教育高峰...

原创小博客
22分钟前
0
0
spring学习笔记(二)spring 事件的使用

spring 中的事件 spring事件通过订阅发布 可以解耦操作 可以同步 可以异步 步骤 编写事件 通过继承org.springframework.context.ApplicationEvent 来编写事件 public ApplicationEvent(Obj...

NotFound403
昨天
13
0
特斯拉车主成功破解了自己Model 3汽车

据汽车博客Electrek消息,一位特斯拉车主成功破解了自己Model 3汽车,还在此基础上运行了Ubuntu。 这位叫trsohmers的网友表示,“功劳大多要归到Ingineerix的头上,他花了数月才找到初始的那...

linuxCool
昨天
4
0
Gitbook : random errors when using gitbook plugin on running "gitbook serve"

在执行gitbook serve时,会有不定的失败错误 参考问题 :#1309 解决方案: 更新gitbook版本,这个问题似乎是3版本的问题 , 官方也不打算在这个版本解决了。 更新 到最新版本后, 不再出现问...

ol_O_O_lo
昨天
2
0

没有更多内容

加载失败,请刷新页面

加载更多

返回顶部
顶部