【发布时间】:2010-05-27 21:51:18
【问题描述】:
你好,我是 mysql 的新手
这是我的问题:
Mysql索引键有什么用?
定义索引键和不定义索引键对 mysql 查询有影响吗?
所有主键都是默认索引键吗?
谢谢一百万
【问题讨论】:
标签: mysql optimization indexing
你好,我是 mysql 的新手
这是我的问题:
Mysql索引键有什么用?
定义索引键和不定义索引键对 mysql 查询有影响吗?
所有主键都是默认索引键吗?
谢谢一百万
【问题讨论】:
标签: mysql optimization indexing
1- 在列(或列集)上定义索引可以更快地搜索该列(或列),但会占用额外的磁盘空间。
2- 是的,不同之处在于使用该列的查询会快得多。
3- 是的,因为通常按主键搜索,所以该列总是被索引是有意义的。
阅读有关 MySQL 索引的更多信息here。
【讨论】:
索引确实是一组额外的记录。而已。
使索引访问更快的事情是:
要知道索引是否有用并不是那么容易猜测(显然我不是在谈论主键)并且应该进行调查。以下是一些可能会减慢您的操作的对应物:
现在关于你的问题'所有主键都是默认索引键吗?',我必须说优化器不是这样工作的。当表中定义了各种索引时,为了达到最佳性能,将使用动态数据和其他一些静态数据(索引统计)来编译更有效的索引组合。本身没有默认索引,每种情况都会导致不同的结果。
问候。
【讨论】: