mySQL中索引index详解

索引
mysql <wbr>索引(index)


 

注意:
1、不要过度索引
2、索引条件列(where后面最频繁的条件列)
3、尽量索引散列值,过于集中的值不要索引。
索引类型
1、普通索引(index):仅仅是加快查询速度
2、唯一索引(unique index):行上的值不能重复
3、主键索引(primary key):主键不能索引
主键索引必定是唯一的,唯一索引不一定是主键,
一张表上只能一个主键,可以有一个或者多个唯一索引。
4、全文索引(fulltext index):在mysql 默认情况下对于中文作用不大。
查看 一张表上的索引
show index from 表名(/G可以横着显示)



 

 
索引不知道名称默认以索引的列名作索引
建立索引

alter table 表名add index/unique/fulltext [索引名](列名)
[索引名]可以不写 ,不写默认与列名相同。
alter table 表名add primary key (列名)
创建索引示例:



 
为 tel列 创建普通索引
 

 

 
为email列 添加唯一索引
 

 
为intro列添加全文索引

 


 


为id列添加主键

  
删除索引
alter  table drop index 索引名
 
示例:
删除email(唯一)索引


 

 

删除主键索引 
全文索引使用



 

 

查看匹配度
select 列名, match (索引) against (‘ 索引词’) from表名;

 

新发现 as  支持 汉字

 

全文停止字:
全文索引,不针对非常频繁的词,做索引。
针对汉语意义不大,因为因为英文单词可以依赖空格等标点来判断单词界限,进而对单词进行索引,而中文mysql无法识别单词界限。
以下表列出了默认的全文停止字 :
a's
able
about
above
according
accordingly
across
actually ...
 
注意!!换服务器导入数据:
大数据量时,先把索引去掉,导入后,统一加上索引。
索引加快查询速度,降低增删改的速度。
额外:
show create table  表名
 可以查看  创建表的语句

发现问题
使用全文索引时加上引擎 ,默认 InnoDB引擎,不支持,会报错


 

详细:

http://blog.sina.com.cn/s/blog_9707fac301016xmp.html

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值