回答
NO,指数都是为了列索引用于快速找到与特定 列值行的表
。 没有索引,MySQL必须在第一行开始 ,然后在整个表中读取 以查找 相关行。表越大, 这个成本就越多。如果该表具有 这一列的索引, MySQL可以快速确定 的位置,以在 的中间寻找数据文件,而不必在所有数据文件中查找 。如果一个表有1,000行,则至少比顺序读取快100倍。
我该如何决定何时创建索引或删除索引?我必须经常从8列的表格中访问两列。 (也就是说有些表格有1000行,10000行,100万,2-3百万,500万)。跟索引一起去总是很好吗?创建索引会不会变成一个糟糕的主意? – user319280 2010-04-23 20:02:55
当性能糟糕时应使用索引,而不是10-1000表格的规则。如果您发现查询速度较慢,请查看索引。我从来没有见过有10行表格执行不好的表格,但加入更大的表格(10,000,000)表格可能会给您带来问题。正如那句老话所说的那样,**不要修复它,如果它不破坏** – 2010-04-23 20:08:09
在oracle文档中,您可以从create index的语法图中看到它不适用于索引。
我也不能想到你想要的理由。
索引已经排序,所以你可能不想创建索引。但是,如果要进行低级编程,则希望将索引的子集存储在内存或磁盘的较小区域中,例如每1024个或每2048个记录,以便您可以先查找并搜索更大的位置索引一条记录在于。
“平方根”规则在这里很有效。所以如果这个表有400万个条目,那就是2048 * 2048(大约)。您可以“加载”2048条记录,然后找到需要加载的主索引的哪个2048记录部分以查找记录,因此总共只加载2个块,而不必在2048个块中进行二进制搜索。
这可能是一个巨大的优化,但它是低级程序员,即数据库工具的开发人员,而不是他们的用户。
- 1. 索引创建是否可以使用现有索引?
- 2. 是否可以在SAP HANA的虚拟表上创建索引?
- 3. 是否创建索引事
- 4. MySQL是否在创建新索引时使用现有索引?
- 5. 是否可以在索引操作(rails 3.2.12)中创建params [:customer]?
- 6. 是否可以在MongoDB中创建多个集合索引(或搜索)?
- 7. 是否可以为临时表创建索引
- 8. 是否可以使用Objectify创建降序索引?
- 9. 是否可以为多个列创建一个索引? hiberanate
- 10. 是否可以使用PHP和HTML创建搜索引擎?
- 11. 索引boost :: multi_index_container中是否可以索引某些元素?
- 12. 什么是mysql索引,以及如何创建索引?
- 13. 是否可以命名在oracle中创建主键时创建的索引?
- 14. 在创建表上创建索引
- 15. 是否可以使用Hibernate注释和hbm2ddl在连接表上创建索引?
- 16. 是否可以在子文档列表上创建唯一索引?
- 17. 使用SELECT INTO时,是否可以在临时表上创建索引?
- 18. 创建索引
- 19. 是否可以禁用负向索引?
- 20. 是否可以嵌套索引匹配?
- 21. 是否可以索引表的evey列?
- 22. 是否可以直接访问索引?
- 23. 表索引是否可逆?
- 24. 可可NSIndexSet:多重索引。如何创建索引集,多个索引?
- 25. 可以在插入时在表上创建索引
- 26. 是否有可能在sqlite中创建临时索引?
- 27. 索引视图索引创建失败
- 28. 如何在索引视图上创建空间索引?
- 29. 使用sqlalchemy在json键(表达式索引)上创建索引
- 30. 分析视频内容,在搜索引擎上创建索引
两条建议:1.让你的问题更清楚,2:接受你的问题的答案 – 2010-04-23 19:53:55
我必须与[@Philippe Leybaert]联合,我发现你有更多有效的输入,当你表明你关心X- )。还有兴趣,请你解释一下**为什么**你想试试这个? – 2010-04-23 20:10:56