菜鸟教程小白 发表于 2022-12-12 16:26:59

ios - 为 iOS 优化 SQLite 多 LIKE 搜索


                                            <p><p>我正在 iPhone 应用程序中执行带有多个 LIKE 子句的 SQLite 选择语句。语句类似于以下内容:</p>

<pre><code>SELECT * FROM mytable
WHERE name LIKE &#39;Smith %&#39;
OR name LIKE &#39;% Smith %&#39;
OR name LIKE &#39;Smith_%&#39;
OR name LIKE &#39;% Smith_%&#39;;
</code></pre>

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

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

<p>这可以通过 REGEXP 来实现吗?如果是,那么 REGEXP 是如何以及默认启用的?</p>

<p>编辑。我正在尝试以下语句:</p>

<pre><code>SELECT * FROM mytable WHERE name REGEXP &#39;[ _]?Smith[ _,]&#39;;
</code></pre></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>SQLite 实际上内置了一个全文搜索引擎。您可以考虑使用它。</p>

<p> <a href="http://www.sqlite.org/fts3.html#section_1" rel="noreferrer noopener nofollow">http://www.sqlite.org/fts3.html#section_1</a> </p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 为 iOS 优化 SQLite 多 LIKE 搜索,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/6287664/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/6287664/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 为 iOS 优化 SQLite 多 LIKE 搜索