加入3个不同的表需要时间来获取数据

时间:2012-01-30 07:06:32

标签: iphone performance sqlite

我正在应用加入查询来从我的iPhone应用程序中的数据库中获取数据。
请参阅我的查询
"select A.a1, A.a2, B.b1, B.b2, C.c1, C.c2, from A LEFT OUTER JOIN B ON A.a3 = B.b3 AND A.a4 = B.b4 LEFT OUTER JOIN C ON A.a5 = C.c3 Where A.a6 = '%@'"

这里A包含30K以上的记录,B包含20K记录,C包含200条记录。 有没有办法减少获取数据所需的时间?

注意:此查询返回正确的结果。

2 个答案:

答案 0 :(得分:1)

在这种情况下,您可以在表中使用列索引。以下链接指向如何在Sqlite数据库中创建索引。

  1. creating the index
  2. Same question answered here.
  3. 这可能会对你有帮助。

答案 1 :(得分:0)

你试过索引表A吗?如果不试试.. 它可能是一种减少获取数据的方法。 警告:在错误的地方使用索引可能会影响您的表现