排序数据的最佳方式

时间:2013-12-03 09:16:50

标签: java android sql arrays sorting

在我的 Android 应用程序中,我必须使用数据库中的数据填充 arraylist 对象。还应对数据进行排序。所以我有两种方式。

  1. 使用 SQL 从数据库中取出数据并对数据进行排序
  2. 从数据库中获取数据并将其放入数组并稍后获取数据
  3. 其中效率更高,对运行时影响较小。需要一些帮助。谢谢!

5 个答案:

答案 0 :(得分:2)

  

使用SQL从数据库中取出数据并对其进行排序   阵列

如果您能够在数据库级别对数据进行排序,请执行此操作。在内存中对数据库级别进行排序要快得多 - 特别是如果在许多记录的情况下限制了内存。 通过使用提供许多数据库的索引,还可以提高性能。

因此,如果您能够并且能够在数据库中排序,则在数据库中排序。如果没有,请在应用程序中进行排序,但在这里您受到内存的限制,排序速度会明显变慢。

注意:值得一提的是,如果您的排序算法在运行时非常容易变化(频率很高并且在从数据库中检索数据后开始更改),那么考虑在应用程序中进行排序是一种很好的方法。不在数据库中并制作一些  分析侧重于应用要求(例如性能)带来的优势和劣势。

答案 1 :(得分:1)

这取决于很多事情。但对于一般情况,从数据库中排序更好,因为它可能在内部使用索引。

答案 2 :(得分:1)

数据库是为按特定顺序检索数据而构建的,因此如果您有选择,请使用数据库进行排序。

但是,如果您的排序要求很复杂且难以用数据库语言编码,那么您应该自己完成。

答案 3 :(得分:1)

如果您的数据集很小,那么您可以编程方式对数据进行排序,因为您可以进行复杂的排序。

但是如果您的数据集很大,那么数据库排序是最好的方法。在我看来,最好采用数据库排序。在SQL中查看ORDER BY

答案 4 :(得分:1)

如果您使用一些简单的逻辑进行排序,那么最好从数据库中进行排序。如果它是复杂的逻辑,那么Java端排序是更好的选择。