索引是对数据库表中一个或多个列(例如,employee 表的姓氏 (lname) 列)的值进行排序的结构。如果想按特定职员的姓来查找他或她,则与在表中搜索所有的行相比,索引有助于更快地获取信息。
数据库索引采用的是B+树,如果查询两个表的内容:
select * from a, b where a.id = b.id;
只需要在b表上的id建立索引,因为查询里对“左表a”没有条件,是全部输出,因此不会用上a的索引;
一个表为两个列建立组合索引,只有两个列的条件都用上才会走索引,否则不会走索引,但是如果分别建立单索引则会占更多的空间。
原文地址:http://blog.csdn.net/holmes_conan/article/details/41493543