gpt4 book ai didi

android - 在android上搜索巨大的sqlite数据库

转载 作者:搜寻专家 更新时间:2023-11-01 08:57:29 24 4
gpt4 key购买 nike

你好
我有一个包含 500,000 条记录的数据库。
想在数据库中搜索,就像在字典搜索中搜索单词一样。
我使用这个查询:

SELECT id,word FROM dic WHERE word like 'test%' LIMIT 10

但不是慢慢搜索,我在数据库中索引单词字段和字段是ASC顺序
没有办法在庞大的数据库中搜索?
示例:

当输入的文本是“Hel”时,我会得到数据库中以“Hel”开头的单词。
数据库创建sql代码:

CREATE TABLE [dic] (
[id] INTEGER PRIMARY KEY AUTOINCREMENT NOT NULL,
[word] TEXT(100) NOT NULL,
[mean] TEXT(1000000) NULL,
[pron] TEXT(1000) NULL,
[form] TEXT(1000) NULL
);
CREATE INDEX [table_index] ON [dic](
[word] ASC
);

最佳答案

LIKE 查询通常不使用索引,因此 sqlite 正在执行表扫描。但是,您可以通过将其设为范围条件来说服 sqlite 使用索引,如下所示:

SELECT id, word 
FROM dic
WHERE word BETWEEN 'test' AND 'test{'
LIMIT 10

注意 "test"< "testa"和 "{"> "z"

关于android - 在android上搜索巨大的sqlite数据库,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17904029/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com