gpt4 book ai didi

ios - 为 iOS 优化 SQLite 多个 LIKE 搜索

转载 作者:塔克拉玛干 更新时间:2023-11-02 09:51:59 24 4
gpt4 key购买 nike

我正在 iPhone 应用程序中执行带有多个 LIKE 子句的 SQLite select 语句。这些语句类似于以下内容:

SELECT * FROM mytable 
WHERE name LIKE 'Smith %'
OR name LIKE '% Smith %'
OR name LIKE 'Smith_%'
OR name LIKE '% Smith_%';

目前在我的笔记本电脑上执行大约需要 0.5 秒,在设备上大约需要 2 秒。由于空间限制,我无法索引“mytable”的“name”列。

每个 LIKE 子句都非常相似 - 如果一个子句失败,很可能每个子句都会失败。因此,我想将这些组合在一起,了解如何优化我的搜索。

这可以通过 REGEXP 完成吗?如果是这样,默认情况下如何启用 REGEXP?

编辑。我正在尝试以下语句:

SELECT * FROM mytable WHERE name REGEXP '[ _]?Smith[ _,]';

最佳答案

SQLite 实际上内置了一个全文搜索引擎。您可能需要考虑使用它。

http://www.sqlite.org/fts3.html#section_1

关于ios - 为 iOS 优化 SQLite 多个 LIKE 搜索,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6287664/

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