开发者社区> 互联网编程> 正文

mysql索引使用注意事项

简介: 1.索引不会包含有NULL值的列 只要列中包含有NULL值都将不会被包含在索引中,复合索引中只要有一列含有NULL值,那么这一列对于此复合索引就是无效的。
+关注继续查看

1.索引不会包含有NULL值的列

只要列中包含有NULL值都将不会被包含在索引中,复合索引中只要有一列含有NULL值,那么这一列对于此复合索引就是无效的。所以我们在数据库设计时不要让字段的默认值为NULL。

2.使用短索引

对串列进行索引,如果可能应该指定一个前缀长度。例如,如果有一个CHAR(255)的列,如果在前10个或20个字符内,多数值是惟一的,那么就不要对整个列进行索引。短索引不仅可以提高查询速度而且可以节省磁盘空间和I/O操作。

3.索引列排序

MySQL查询只使用一个索引,因此如果where子句中已经使用了索引的话,那么order by中的列是不会使用索引的。因此数据库默认排序可以符合要求的情况下不要使用排序操作;尽量不要包含多个列的排序,如果需要最好给这些列创建复合索引。

4.like语句操作

一般情况下不鼓励使用like操作,如果非使用不可,如何使用也是一个问题。like “%aaa%” 不会使用索引而like “aaa%”可以使用索引。

5.不要在列上进行运算

复制代码代码如下:
select * from users where YEAR(adddate)<2007;
将在每个行上进行运算,这将导致索引失效而进行全表扫描,因此我们可以改成:
复制代码代码如下:
select * from users where adddate<‘2007-01-01';

6.不使用NOT IN和<>操作

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

相关文章
MySql注意事项
MySql注意事项
35 0
【Mysql】InnoDB 中 B+ 树索引的注意事项
【Mysql】InnoDB 中 B+ 树索引的注意事项
41 0
Linux安装MySQL时注意事项
主要针对遇到的异常进行记录,后续遇到会继续填充
73 0
Apache Doris ODBC mysql外表注意事项
这里要说的是在使用Mysql的ODBC外表的时候要注意事项。
172 0
Mysql的备份方式及使用注意事项
本文介绍了Mysql可用的在线备份方式,并对使用注意事项做了说明。
76 0
警告!MySQL函数IFNULL和COALESCE的注意事项
警告!MySQL函数IFNULL和COALESCE的注意事项
110 0
面试官:讲讲MySQL主从复制的原理和注意事项??
最近在写Mycat专题,由于不少小伙伴最近要出去面试,问我能不能简单写下MySQL的主从复制原理和注意事项,因为在之前的面试中被问到了这些问题。我:可以啊,安排上了!!
68 0
mysql备份注意事项
1. 从二级复制服务器上进行备份。 2. 在进行备份期间停止复制,以避免在数据依赖和外键约束上出现不一致。 3. 彻底停止MySQL,从数据库文件进行备份。 4. 如果使用 MySQL dump进行备份,请同时备份二进制日志文件 – 确保复制没有中断。
1312 0
+关注
互联网编程
讲个笑话,我有50年的Java编程经验,哈哈哈
文章
问答
文章排行榜
最热
最新
相关电子书
更多
让 MySQL 原生分布式触手可及
立即下载
好的 MySQL 兼容可以做到什么程度
立即下载
云数据库RDS MySQL从入门到高阶
立即下载