1. 就是对数据库一些数据的排列的缓存,查询时如果有缓存就直接查询缓存里的数据,而不是查询所有的数据,这样就加快了查询的数据
@唐伯虎
2.
@此人已死, 举个例子
select * from tz where bkid=15 order by youxian desc, time desc
如果没有索引,那么mysql需要遍历所有贴子的bkid字段,来找到版块id为15的贴子,然后再遍历这些贴子的youxian和time字段,来实现置顶排序和按时间排序。遍历所有记录。非常慢,并且贴子越多越慢。
但是如果有一个索引:
create index tz_byt on tz(bkid, youxian, time)
那么mysql就会事先进行排序,然后存进索引里,到要用时,直接从索引里找出符合条件的记录,非常快,而且贴子再多也不会变慢。
事先排序以加速查询,这就是索引的作用。