Android 查询大表并在代码中执行逻辑或执行大量查询。。哪一个更有效?
我有一个非常大的表,大约90000行,每行包含10列。。我需要从数据库中获取一些数据。。在最坏的情况下,我需要查询7500行,但通常是大约4000行 每行有一列称为“行号”,每~10行有相同的行号,从1开始…Android 查询大表并在代码中执行逻辑或执行大量查询。。哪一个更有效?,android,performance,sqlite,Android,Performance,Sqlite,我有一个非常大的表,大约90000行,每行包含10列。。我需要从数据库中获取一些数据。。在最坏的情况下,我需要查询7500行,但通常是大约4000行 每行有一列称为“行号”,每~10行有相同的行号,从1开始… 对于所有具有相同行号的行,我需要从名为RATING.的列中获取最低和最高的行号 我可以得到所有这些~4000行,然后将其中的每一行都传递出去,并进行一些逻辑运算以得到最高或最低的.. 或者我可以查询我感兴趣的每个行号,让查询得到最高和最低的行号,这会更容易 这两种方法中哪一种更有效?我支持
对于所有具有相同行号的行,我需要从名为RATING.的列中获取最低和最高的行号 我可以得到所有这些~4000行,然后将其中的每一行都传递出去,并进行一些逻辑运算以得到最高或最低的..
或者我可以查询我感兴趣的每个行号,让查询得到最高和最低的行号,这会更容易
这两种方法中哪一种更有效?我支持查询。乍一看,查询非常简单:
SELECT LineNumber MIN(RATING) MAX(RATING) FROM <YOUR_TABLE> WHERE... GROUP BY LineNumber
从以下位置选择线号最小(额定值)最大(额定值)。。。按行号分组
这应该会给你想要的东西(如果我理解正确的话)我和你一样有一些问题,但在我的例子中是关于日期的,获取“之后”和“之前” 我在代码中做了,我查询了我需要的所有数据,然后我比较了日期,在大约40k行中,时间接近20秒 所以我试着把逻辑放进SQL,当我得到查询时,我做比较,让我惊讶的是现在查询,我所需要的一切都在不到2秒内完成 我的建议是首先尝试将逻辑放入查询中,如果结果不令人满意,请尝试代码,看看什么是最好的 祝你好运 []的 伯坦