android - 从具有一百万行的sqlite表中选择行的有效方法
问题描述
我有一个 sqlite 表,它由大约一百万行组成,三列是: id | 词 | 意义 |
它用于字典应用程序,用户在其中搜索单词并在该表上执行查询以检索具有该单词的行(可能会返回多行)。
但问题是查询速度非常慢,大约需要 30 秒才能返回结果。
有没有办法通过使用不同的查询来加快检索速度?
PS:所有行都已经按字母顺序按单词和数字按id排序,我想知道我是否可以通过指定查询位置来加快检索速度,例如在“rabbit”和“rock”等之间。但我不知道什么查询或使用方法。
这是我的查询
@Query("SELECT * FROM entries WHERE lower(word) =:word") List<Entry> getAllEntriesForWord(String word);
解决方案
推荐阅读
- python - 是否有解密方法,当你有加密的东西时找不到密码和结果
- python - 如何将列表间隔(以字符串格式)转换为整数?
- reactjs - 来自 React 输入字段的数学
- reactjs - NextJS 中如何管理功能组件状态?
- c - 使用读取文件结构调用函数时出现分段错误
- python - Python 项目仅使用项目中的第一个单词进行排序
- nginx - 使用 nginx 将所有非 www 链接重定向到 www
- plot - 在 Julia 中,绘制带有特定子标签的图
- python - 透明模式失败:OSError(92, 'Protocol not available')
- vue.js - 将 JSON 文件导入被 CORS 策略阻止的 Vue 项目