【发布时间】:2015-02-23 20:53:51
【问题描述】:
我在我的 Android 应用程序中使用 SQLite 数据库。我有一个或多或少有 500 行的非变量表。我想查询按 varchar 列(字母顺序)排序的这些行。
什么会更快:
- 在该列上添加索引
或
- 在内存中对这些数据进行排序,然后使用整数排序列进行持久化?
我的第一种方法是添加索引,但后来我研究了 varchar 列上的索引效率不高。
谢谢。
【问题讨论】:
我在我的 Android 应用程序中使用 SQLite 数据库。我有一个或多或少有 500 行的非变量表。我想查询按 varchar 列(字母顺序)排序的这些行。
什么会更快:
或
我的第一种方法是添加索引,但后来我研究了 varchar 列上的索引效率不高。
谢谢。
【问题讨论】:
当您使用排序列和您正在查询的所有其他列创建索引时,您有一个covering index,它允许以正确的顺序检索行而无需排序,也无需在表格中查找行。
也就是说,500 行很小。 我预计不会有任何明显的差异。
【讨论】: