随笔分类 - 数据库
摘要:数据库查询性能优化之利器—索引(二) 在前面一篇文章中谈到适当地建立索引能够大幅度地提升SQL语句查询速度,然而并不是在什么情况下都适合建立索引,下面来谈一下什么情况下适合建立索引、建立什么样的索引以及建立索引带来的好处和坏处。一.索引的概念 广义的索引是指:将具有检索意义的事项按照一定方式排列,以方便进行检索。数据库中的索引是指:将数据库表中的一列或者多列按照一定的方式进行组织以方便对数据库表中的内容进行查询。 字典是广义的索引最好的例子,比如我们在字典中查找"陈"字,有两种查找方式:拼音查找和偏旁查找。拼音查找的前提是知道这个字的大概读音是"chen"
阅读全文
摘要:数据库查询性能优化之利器—索引(一) 最近在做基于Android的公交查询系统的过程中,遇到一个很棘手的问题:换乘算法效率低。在直达查询和一次换乘查询的时候,问题体现的还不是很明显,能够在1s之内查询出乘车方案,而当进行二次查询的时候,基本要等一两分钟才能查询出换乘方案,这对于公交查询系统是绝对无法容忍的。于是找了大量的关于公交换乘算法方面的论文和资料进行研究,发现大多治标不治本,没有从根本上解决公交换乘算法效率低下的问题。公交换乘算法主要有以下三种思路: 1)基于数据库的查询; 2)采用Dijkstra或者Floyd算法或者改进的Dijkstra算...
阅读全文