假如数据库中某个表的记录数是n。某条特定的SQL语句在此表未添加索引的情况下的执行时间是t1,添加索引的情况下的执行时间是t2。
能否得到使用n表达的t1/t2?是n/(log(n))么?感觉内存数据库应该是可以用这个公式表达吧?数据如果存放在硬盘中的话,时间的下限是否近似为单次硬盘IO的时间?

解决方案 »

  1.   

    只能大概知道时间复杂度  具体提升多少最好看整体性能如何  比如原来机器load多少 加了索引之后load多少数据存在硬盘  取数据时间理论上取决于硬盘转速  但是实际上缓存无处不在
      

  2.   

    理论上索引是2分查找。所以会相差很多。实际上MYSQL用的是B+树。 具体你可以从百度上了解相关的知识。