【问题标题】:SQLite query for Full Text Search to MATCH on both sides like LIKE用于全文搜索的 SQLite 查询以匹配双方,如 LIKE
【发布时间】:2018-05-17 14:11:35
【问题描述】:

我在 Android 的 SQLite FTS 中的双方 MATCH 都有问题。

假设我的虚拟 FTS 表中有这个文本项

  1. Hello World 我在这里
  2. HelloWorld 我在这里
  3. HelloWorldIamHere

我想为搜索字符串 'World' 实现这一点,我应该得到所有这 三个 结果。

我可以使用 LIKE% 通配符作为 WHERE column LIKE '%World%' 来实现这一点,但这并不意味着随着数据的增长而使用。所以我使用 MATCH* 通配符和全文搜索虚拟表作为 WHERE column MATCH 'World*'

但是有了这个我只是得到这个结果......

  1. Hello World 我在这里

我应该如何实现我的 MATCH 查询以获取所有三个项目作为我的结果

【问题讨论】:

    标签: android sqlite fts3


    【解决方案1】:

    FTS 允许您仅搜索由tokenizer 生成的术语。

    FTS 索引中没有可以快速搜索后缀的信息。 您必须使用 LIKE,或者手动构建自己的索引。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-10-18
      • 2016-12-10
      • 2022-08-11
      • 2011-12-19
      • 2023-03-16
      • 1970-01-01
      相关资源
      最近更新 更多